File Coverage

blib/lib/Paws/CloudWatchLogs.pm
Criterion Covered Total %
statement 34 210 16.1
branch 0 24 0.0
condition n/a
subroutine 12 41 29.2
pod 34 39 87.1
total 80 314 25.4


line stmt bran cond sub pod time code
1             package Paws::CloudWatchLogs;
2 1     1   2054 use Moose;
  1     3   3  
  1         7  
  3         2115  
  3         8  
  3         28  
3 22     22 0 102 sub service { 'logs' }
4 0     0 0 0 sub version { '2014-03-28' }
5 0     0 0 0 sub target_prefix { 'Logs_20140328' }
6 0     0 0 0 sub json_version { "1.1" }
7             has max_attempts => (is => 'ro', isa => 'Int', default => 5);
8             has retry => (is => 'ro', isa => 'HashRef', default => sub {
9             { base => 'rand', type => 'exponential', growth_factor => 2 }
10             });
11             has retriables => (is => 'ro', isa => 'ArrayRef', default => sub { [
12             ] });
13              
14             with 'Paws::API::Caller', 'Paws::API::EndpointResolver', 'Paws::Net::V4Signature', 'Paws::Net::JsonCaller', 'Paws::Net::JsonResponse';
15              
16            
17             sub CancelExportTask {
18 0     0 1 0 my $self = shift;
19 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::CancelExportTask', @_);
20 0         0 return $self->caller->do_call($self, $call_object);
21             }
22             sub CreateExportTask {
23 0     0 1 0 my $self = shift;
24 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::CreateExportTask', @_);
25 0         0 return $self->caller->do_call($self, $call_object);
26             }
27             sub CreateLogGroup {
28 3     3 1 347 my $self = shift;
29 3         18 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::CreateLogGroup', @_);
30 3         1875 return $self->caller->do_call($self, $call_object);
31             }
32             sub CreateLogStream {
33 2     2 1 26 my $self = shift;
34 2         12 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::CreateLogStream', @_);
35 2         1736 return $self->caller->do_call($self, $call_object);
36             }
37             sub DeleteDestination {
38 0     0 1 0 my $self = shift;
39 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::DeleteDestination', @_);
40 0         0 return $self->caller->do_call($self, $call_object);
41             }
42             sub DeleteLogGroup {
43 2     2 1 23 my $self = shift;
44 2         12 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::DeleteLogGroup', @_);
45 2         1107 return $self->caller->do_call($self, $call_object);
46             }
47             sub DeleteLogStream {
48 2     2 1 29 my $self = shift;
49 2         14 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::DeleteLogStream', @_);
50 2         2199 return $self->caller->do_call($self, $call_object);
51             }
52             sub DeleteMetricFilter {
53 0     0 1 0 my $self = shift;
54 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::DeleteMetricFilter', @_);
55 0         0 return $self->caller->do_call($self, $call_object);
56             }
57             sub DeleteRetentionPolicy {
58 0     0 1 0 my $self = shift;
59 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::DeleteRetentionPolicy', @_);
60 0         0 return $self->caller->do_call($self, $call_object);
61             }
62             sub DeleteSubscriptionFilter {
63 0     0 1 0 my $self = shift;
64 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::DeleteSubscriptionFilter', @_);
65 0         0 return $self->caller->do_call($self, $call_object);
66             }
67             sub DescribeDestinations {
68 0     0 1 0 my $self = shift;
69 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::DescribeDestinations', @_);
70 0         0 return $self->caller->do_call($self, $call_object);
71             }
72             sub DescribeExportTasks {
73 0     0 1 0 my $self = shift;
74 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::DescribeExportTasks', @_);
75 0         0 return $self->caller->do_call($self, $call_object);
76             }
77             sub DescribeLogGroups {
78 4     4 1 270 my $self = shift;
79 4         26 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::DescribeLogGroups', @_);
80 4         2193 return $self->caller->do_call($self, $call_object);
81             }
82             sub DescribeLogStreams {
83 2     2 1 515 my $self = shift;
84 2         12 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::DescribeLogStreams', @_);
85 2         2267 return $self->caller->do_call($self, $call_object);
86             }
87             sub DescribeMetricFilters {
88 0     0 1 0 my $self = shift;
89 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::DescribeMetricFilters', @_);
90 0         0 return $self->caller->do_call($self, $call_object);
91             }
92             sub DescribeSubscriptionFilters {
93 0     0 1 0 my $self = shift;
94 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::DescribeSubscriptionFilters', @_);
95 0         0 return $self->caller->do_call($self, $call_object);
96             }
97             sub FilterLogEvents {
98 2     2 1 573 my $self = shift;
99 2         20 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::FilterLogEvents', @_);
100 2         4600 return $self->caller->do_call($self, $call_object);
101             }
102             sub GetLogEvents {
103 1     1 1 585 my $self = shift;
104 1         8 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::GetLogEvents', @_);
105 1         1315 return $self->caller->do_call($self, $call_object);
106             }
107             sub ListTagsLogGroup {
108 0     0 1 0 my $self = shift;
109 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::ListTagsLogGroup', @_);
110 0         0 return $self->caller->do_call($self, $call_object);
111             }
112             sub PutDestination {
113 0     0 1 0 my $self = shift;
114 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::PutDestination', @_);
115 0         0 return $self->caller->do_call($self, $call_object);
116             }
117             sub PutDestinationPolicy {
118 0     0 1 0 my $self = shift;
119 0         0 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::PutDestinationPolicy', @_);
120 0         0 return $self->caller->do_call($self, $call_object);
121             }
122             sub PutLogEvents {
123 4     4 1 85 my $self = shift;
124 4         35 my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::PutLogEvents', @_);
125 4         8735 return $self->caller->do_call($self, $call_object);
126             }
127             sub PutMetricFilter {
128 0     0 1   my $self = shift;
129 0           my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::PutMetricFilter', @_);
130 0           return $self->caller->do_call($self, $call_object);
131             }
132             sub PutRetentionPolicy {
133 0     0 1   my $self = shift;
134 0           my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::PutRetentionPolicy', @_);
135 0           return $self->caller->do_call($self, $call_object);
136             }
137             sub PutSubscriptionFilter {
138 0     0 1   my $self = shift;
139 0           my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::PutSubscriptionFilter', @_);
140 0           return $self->caller->do_call($self, $call_object);
141             }
142             sub TagLogGroup {
143 0     0 1   my $self = shift;
144 0           my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::TagLogGroup', @_);
145 0           return $self->caller->do_call($self, $call_object);
146             }
147             sub TestMetricFilter {
148 0     0 1   my $self = shift;
149 0           my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::TestMetricFilter', @_);
150 0           return $self->caller->do_call($self, $call_object);
151             }
152             sub UntagLogGroup {
153 0     0 1   my $self = shift;
154 0           my $call_object = $self->new_with_coercions('Paws::CloudWatchLogs::UntagLogGroup', @_);
155 0           return $self->caller->do_call($self, $call_object);
156             }
157            
158             sub DescribeAllDestinations {
159 0     0 1   my $self = shift;
160              
161 0 0         my $callback = shift @_ if (ref($_[0]) eq 'CODE');
162 0           my $result = $self->DescribeDestinations(@_);
163 0           my $next_result = $result;
164              
165 0 0         if (not defined $callback) {
166 0           while ($next_result->nextToken) {
167 0           $next_result = $self->DescribeDestinations(@_, nextToken => $next_result->nextToken);
168 0           push @{ $result->destinations }, @{ $next_result->destinations };
  0            
  0            
169             }
170 0           return $result;
171             } else {
172 0           while ($result->nextToken) {
173 0           $callback->($_ => 'destinations') foreach (@{ $result->destinations });
  0            
174 0           $result = $self->DescribeDestinations(@_, nextToken => $result->nextToken);
175             }
176 0           $callback->($_ => 'destinations') foreach (@{ $result->destinations });
  0            
177             }
178              
179             return undef
180 0           }
181             sub DescribeAllLogGroups {
182 0     0 1   my $self = shift;
183              
184 0 0         my $callback = shift @_ if (ref($_[0]) eq 'CODE');
185 0           my $result = $self->DescribeLogGroups(@_);
186 0           my $next_result = $result;
187              
188 0 0         if (not defined $callback) {
189 0           while ($next_result->nextToken) {
190 0           $next_result = $self->DescribeLogGroups(@_, nextToken => $next_result->nextToken);
191 0           push @{ $result->logGroups }, @{ $next_result->logGroups };
  0            
  0            
192             }
193 0           return $result;
194             } else {
195 0           while ($result->nextToken) {
196 0           $callback->($_ => 'logGroups') foreach (@{ $result->logGroups });
  0            
197 0           $result = $self->DescribeLogGroups(@_, nextToken => $result->nextToken);
198             }
199 0           $callback->($_ => 'logGroups') foreach (@{ $result->logGroups });
  0            
200             }
201              
202             return undef
203 0           }
204             sub DescribeAllLogStreams {
205 0     0 1   my $self = shift;
206              
207 0 0         my $callback = shift @_ if (ref($_[0]) eq 'CODE');
208 0           my $result = $self->DescribeLogStreams(@_);
209 0           my $next_result = $result;
210              
211 0 0         if (not defined $callback) {
212 0           while ($next_result->nextToken) {
213 0           $next_result = $self->DescribeLogStreams(@_, nextToken => $next_result->nextToken);
214 0           push @{ $result->logStreams }, @{ $next_result->logStreams };
  0            
  0            
215             }
216 0           return $result;
217             } else {
218 0           while ($result->nextToken) {
219 0           $callback->($_ => 'logStreams') foreach (@{ $result->logStreams });
  0            
220 0           $result = $self->DescribeLogStreams(@_, nextToken => $result->nextToken);
221             }
222 0           $callback->($_ => 'logStreams') foreach (@{ $result->logStreams });
  0            
223             }
224              
225             return undef
226 0           }
227             sub DescribeAllMetricFilters {
228 0     0 1   my $self = shift;
229              
230 0 0         my $callback = shift @_ if (ref($_[0]) eq 'CODE');
231 0           my $result = $self->DescribeMetricFilters(@_);
232 0           my $next_result = $result;
233              
234 0 0         if (not defined $callback) {
235 0           while ($next_result->nextToken) {
236 0           $next_result = $self->DescribeMetricFilters(@_, nextToken => $next_result->nextToken);
237 0           push @{ $result->metricFilters }, @{ $next_result->metricFilters };
  0            
  0            
238             }
239 0           return $result;
240             } else {
241 0           while ($result->nextToken) {
242 0           $callback->($_ => 'metricFilters') foreach (@{ $result->metricFilters });
  0            
243 0           $result = $self->DescribeMetricFilters(@_, nextToken => $result->nextToken);
244             }
245 0           $callback->($_ => 'metricFilters') foreach (@{ $result->metricFilters });
  0            
246             }
247              
248             return undef
249 0           }
250             sub DescribeAllSubscriptionFilters {
251 0     0 1   my $self = shift;
252              
253 0 0         my $callback = shift @_ if (ref($_[0]) eq 'CODE');
254 0           my $result = $self->DescribeSubscriptionFilters(@_);
255 0           my $next_result = $result;
256              
257 0 0         if (not defined $callback) {
258 0           while ($next_result->nextToken) {
259 0           $next_result = $self->DescribeSubscriptionFilters(@_, nextToken => $next_result->nextToken);
260 0           push @{ $result->subscriptionFilters }, @{ $next_result->subscriptionFilters };
  0            
  0            
261             }
262 0           return $result;
263             } else {
264 0           while ($result->nextToken) {
265 0           $callback->($_ => 'subscriptionFilters') foreach (@{ $result->subscriptionFilters });
  0            
266 0           $result = $self->DescribeSubscriptionFilters(@_, nextToken => $result->nextToken);
267             }
268 0           $callback->($_ => 'subscriptionFilters') foreach (@{ $result->subscriptionFilters });
  0            
269             }
270              
271             return undef
272 0           }
273             sub FilterAllLogEvents {
274 0     0 1   my $self = shift;
275              
276 0 0         my $callback = shift @_ if (ref($_[0]) eq 'CODE');
277 0           my $result = $self->FilterLogEvents(@_);
278 0           my $next_result = $result;
279              
280 0 0         if (not defined $callback) {
281 0           while ($next_result->nextToken) {
282 0           $next_result = $self->FilterLogEvents(@_, nextToken => $next_result->nextToken);
283 0           push @{ $result->events }, @{ $next_result->events };
  0            
  0            
284 0           push @{ $result->searchedLogStreams }, @{ $next_result->searchedLogStreams };
  0            
  0            
285             }
286 0           return $result;
287             } else {
288 0           while ($result->nextToken) {
289 0           $callback->($_ => 'events') foreach (@{ $result->events });
  0            
290 0           $callback->($_ => 'searchedLogStreams') foreach (@{ $result->searchedLogStreams });
  0            
291 0           $result = $self->FilterLogEvents(@_, nextToken => $result->nextToken);
292             }
293 0           $callback->($_ => 'events') foreach (@{ $result->events });
  0            
294 0           $callback->($_ => 'searchedLogStreams') foreach (@{ $result->searchedLogStreams });
  0            
295             }
296              
297             return undef
298 0           }
299              
300              
301 0     0 0   sub operations { qw/CancelExportTask CreateExportTask CreateLogGroup CreateLogStream DeleteDestination DeleteLogGroup DeleteLogStream DeleteMetricFilter DeleteRetentionPolicy DeleteSubscriptionFilter DescribeDestinations DescribeExportTasks DescribeLogGroups DescribeLogStreams DescribeMetricFilters DescribeSubscriptionFilters FilterLogEvents GetLogEvents ListTagsLogGroup PutDestination PutDestinationPolicy PutLogEvents PutMetricFilter PutRetentionPolicy PutSubscriptionFilter TagLogGroup TestMetricFilter UntagLogGroup / }
302              
303             1;
304              
305             ### main pod documentation begin ###
306              
307             =head1 NAME
308              
309             Paws::CloudWatchLogs - Perl Interface to AWS Amazon CloudWatch Logs
310              
311             =head1 SYNOPSIS
312              
313             use Paws;
314              
315             my $obj = Paws->service('CloudWatchLogs');
316             my $res = $obj->Method(
317             Arg1 => $val1,
318             Arg2 => [ 'V1', 'V2' ],
319             # if Arg3 is an object, the HashRef will be used as arguments to the constructor
320             # of the arguments type
321             Arg3 => { Att1 => 'Val1' },
322             # if Arg4 is an array of objects, the HashRefs will be passed as arguments to
323             # the constructor of the arguments type
324             Arg4 => [ { Att1 => 'Val1' }, { Att1 => 'Val2' } ],
325             );
326              
327             =head1 DESCRIPTION
328              
329             You can use Amazon CloudWatch Logs to monitor, store, and access your
330             log files from EC2 instances, Amazon CloudTrail, or other sources. You
331             can then retrieve the associated log data from CloudWatch Logs using
332             the Amazon CloudWatch console, the CloudWatch Logs commands in the AWS
333             CLI, the CloudWatch Logs API, or the CloudWatch Logs SDK.
334              
335             You can use CloudWatch Logs to:
336              
337             =over
338              
339             =item *
340              
341             B<Monitor Logs from Amazon EC2 Instances in Real-time>: You can use
342             CloudWatch Logs to monitor applications and systems using log data. For
343             example, CloudWatch Logs can track the number of errors that occur in
344             your application logs and send you a notification whenever the rate of
345             errors exceeds a threshold you specify. CloudWatch Logs uses your log
346             data for monitoring; so, no code changes are required. For example, you
347             can monitor application logs for specific literal terms (such as
348             "NullReferenceException") or count the number of occurrences of a
349             literal term at a particular position in log data (such as "404" status
350             codes in an Apache access log). When the term you are searching for is
351             found, CloudWatch Logs reports the data to a Amazon CloudWatch metric
352             that you specify.
353              
354             =item *
355              
356             B<Monitor Amazon CloudTrail Logged Events>: You can create alarms in
357             Amazon CloudWatch and receive notifications of particular API activity
358             as captured by CloudTrail and use the notification to perform
359             troubleshooting.
360              
361             =item *
362              
363             B<Archive Log Data>: You can use CloudWatch Logs to store your log data
364             in highly durable storage. You can change the log retention setting so
365             that any log events older than this setting are automatically deleted.
366             The CloudWatch Logs agent makes it easy to quickly send both rotated
367             and non-rotated log data off of a host and into the log service. You
368             can then access the raw log data when you need it.
369              
370             =back
371              
372              
373             =head1 METHODS
374              
375             =head2 CancelExportTask(TaskId => Str)
376              
377             Each argument is described in detail in: L<Paws::CloudWatchLogs::CancelExportTask>
378              
379             Returns: nothing
380              
381             Cancels the specified export task.
382              
383             The task must be in the C<PENDING> or C<RUNNING> state.
384              
385              
386             =head2 CreateExportTask(Destination => Str, From => Int, LogGroupName => Str, To => Int, [DestinationPrefix => Str, LogStreamNamePrefix => Str, TaskName => Str])
387              
388             Each argument is described in detail in: L<Paws::CloudWatchLogs::CreateExportTask>
389              
390             Returns: a L<Paws::CloudWatchLogs::CreateExportTaskResponse> instance
391              
392             Creates an export task, which allows you to efficiently export data
393             from a log group to an Amazon S3 bucket.
394              
395             This is an asynchronous call. If all the required information is
396             provided, this operation initiates an export task and responds with the
397             ID of the task. After the task has started, you can use
398             DescribeExportTasks to get the status of the export task. Each account
399             can only have one active (C<RUNNING> or C<PENDING>) export task at a
400             time. To cancel an export task, use CancelExportTask.
401              
402             You can export logs from multiple log groups or multiple time ranges to
403             the same S3 bucket. To separate out log data for each export task, you
404             can specify a prefix that will be used as the Amazon S3 key prefix for
405             all exported objects.
406              
407              
408             =head2 CreateLogGroup(LogGroupName => Str, [Tags => L<Paws::CloudWatchLogs::Tags>])
409              
410             Each argument is described in detail in: L<Paws::CloudWatchLogs::CreateLogGroup>
411              
412             Returns: nothing
413              
414             Creates a log group with the specified name.
415              
416             You can create up to 5000 log groups per account.
417              
418             You must use the following guidelines when naming a log group:
419              
420             =over
421              
422             =item *
423              
424             Log group names must be unique within a region for an AWS account.
425              
426             =item *
427              
428             Log group names can be between 1 and 512 characters long.
429              
430             =item *
431              
432             Log group names consist of the following characters: a-z, A-Z, 0-9, '_'
433             (underscore), '-' (hyphen), '/' (forward slash), and '.' (period).
434              
435             =back
436              
437              
438              
439             =head2 CreateLogStream(LogGroupName => Str, LogStreamName => Str)
440              
441             Each argument is described in detail in: L<Paws::CloudWatchLogs::CreateLogStream>
442              
443             Returns: nothing
444              
445             Creates a log stream for the specified log group.
446              
447             There is no limit on the number of log streams that you can create for
448             a log group.
449              
450             You must use the following guidelines when naming a log stream:
451              
452             =over
453              
454             =item *
455              
456             Log stream names must be unique within the log group.
457              
458             =item *
459              
460             Log stream names can be between 1 and 512 characters long.
461              
462             =item *
463              
464             The ':' (colon) and '*' (asterisk) characters are not allowed.
465              
466             =back
467              
468              
469              
470             =head2 DeleteDestination(DestinationName => Str)
471              
472             Each argument is described in detail in: L<Paws::CloudWatchLogs::DeleteDestination>
473              
474             Returns: nothing
475              
476             Deletes the specified destination, and eventually disables all the
477             subscription filters that publish to it. This operation does not delete
478             the physical resource encapsulated by the destination.
479              
480              
481             =head2 DeleteLogGroup(LogGroupName => Str)
482              
483             Each argument is described in detail in: L<Paws::CloudWatchLogs::DeleteLogGroup>
484              
485             Returns: nothing
486              
487             Deletes the specified log group and permanently deletes all the
488             archived log events associated with the log group.
489              
490              
491             =head2 DeleteLogStream(LogGroupName => Str, LogStreamName => Str)
492              
493             Each argument is described in detail in: L<Paws::CloudWatchLogs::DeleteLogStream>
494              
495             Returns: nothing
496              
497             Deletes the specified log stream and permanently deletes all the
498             archived log events associated with the log stream.
499              
500              
501             =head2 DeleteMetricFilter(FilterName => Str, LogGroupName => Str)
502              
503             Each argument is described in detail in: L<Paws::CloudWatchLogs::DeleteMetricFilter>
504              
505             Returns: nothing
506              
507             Deletes the specified metric filter.
508              
509              
510             =head2 DeleteRetentionPolicy(LogGroupName => Str)
511              
512             Each argument is described in detail in: L<Paws::CloudWatchLogs::DeleteRetentionPolicy>
513              
514             Returns: nothing
515              
516             Deletes the specified retention policy.
517              
518             Log events do not expire if they belong to log groups without a
519             retention policy.
520              
521              
522             =head2 DeleteSubscriptionFilter(FilterName => Str, LogGroupName => Str)
523              
524             Each argument is described in detail in: L<Paws::CloudWatchLogs::DeleteSubscriptionFilter>
525              
526             Returns: nothing
527              
528             Deletes the specified subscription filter.
529              
530              
531             =head2 DescribeDestinations([DestinationNamePrefix => Str, Limit => Int, NextToken => Str])
532              
533             Each argument is described in detail in: L<Paws::CloudWatchLogs::DescribeDestinations>
534              
535             Returns: a L<Paws::CloudWatchLogs::DescribeDestinationsResponse> instance
536              
537             Lists all your destinations. The results are ASCII-sorted by
538             destination name.
539              
540              
541             =head2 DescribeExportTasks([Limit => Int, NextToken => Str, StatusCode => Str, TaskId => Str])
542              
543             Each argument is described in detail in: L<Paws::CloudWatchLogs::DescribeExportTasks>
544              
545             Returns: a L<Paws::CloudWatchLogs::DescribeExportTasksResponse> instance
546              
547             Lists the specified export tasks. You can list all your export tasks or
548             filter the results based on task ID or task status.
549              
550              
551             =head2 DescribeLogGroups([Limit => Int, LogGroupNamePrefix => Str, NextToken => Str])
552              
553             Each argument is described in detail in: L<Paws::CloudWatchLogs::DescribeLogGroups>
554              
555             Returns: a L<Paws::CloudWatchLogs::DescribeLogGroupsResponse> instance
556              
557             Lists the specified log groups. You can list all your log groups or
558             filter the results by prefix. The results are ASCII-sorted by log group
559             name.
560              
561              
562             =head2 DescribeLogStreams(LogGroupName => Str, [Descending => Bool, Limit => Int, LogStreamNamePrefix => Str, NextToken => Str, OrderBy => Str])
563              
564             Each argument is described in detail in: L<Paws::CloudWatchLogs::DescribeLogStreams>
565              
566             Returns: a L<Paws::CloudWatchLogs::DescribeLogStreamsResponse> instance
567              
568             Lists the log streams for the specified log group. You can list all the
569             log streams or filter the results by prefix. You can also control how
570             the results are ordered.
571              
572             This operation has a limit of five transactions per second, after which
573             transactions are throttled.
574              
575              
576             =head2 DescribeMetricFilters([FilterNamePrefix => Str, Limit => Int, LogGroupName => Str, MetricName => Str, MetricNamespace => Str, NextToken => Str])
577              
578             Each argument is described in detail in: L<Paws::CloudWatchLogs::DescribeMetricFilters>
579              
580             Returns: a L<Paws::CloudWatchLogs::DescribeMetricFiltersResponse> instance
581              
582             Lists the specified metric filters. You can list all the metric filters
583             or filter the results by log name, prefix, metric name, and metric
584             namespace. The results are ASCII-sorted by filter name.
585              
586              
587             =head2 DescribeSubscriptionFilters(LogGroupName => Str, [FilterNamePrefix => Str, Limit => Int, NextToken => Str])
588              
589             Each argument is described in detail in: L<Paws::CloudWatchLogs::DescribeSubscriptionFilters>
590              
591             Returns: a L<Paws::CloudWatchLogs::DescribeSubscriptionFiltersResponse> instance
592              
593             Lists the subscription filters for the specified log group. You can
594             list all the subscription filters or filter the results by prefix. The
595             results are ASCII-sorted by filter name.
596              
597              
598             =head2 FilterLogEvents(LogGroupName => Str, [EndTime => Int, FilterPattern => Str, Interleaved => Bool, Limit => Int, LogStreamNames => ArrayRef[Str|Undef], NextToken => Str, StartTime => Int])
599              
600             Each argument is described in detail in: L<Paws::CloudWatchLogs::FilterLogEvents>
601              
602             Returns: a L<Paws::CloudWatchLogs::FilterLogEventsResponse> instance
603              
604             Lists log events from the specified log group. You can list all the log
605             events or filter the results using a filter pattern, a time range, and
606             the name of the log stream.
607              
608             By default, this operation returns as many log events as can fit in 1MB
609             (up to 10,000 log events), or all the events found within the time
610             range that you specify. If the results include a token, then there are
611             more log events available, and you can get additional results by
612             specifying the token in a subsequent call.
613              
614              
615             =head2 GetLogEvents(LogGroupName => Str, LogStreamName => Str, [EndTime => Int, Limit => Int, NextToken => Str, StartFromHead => Bool, StartTime => Int])
616              
617             Each argument is described in detail in: L<Paws::CloudWatchLogs::GetLogEvents>
618              
619             Returns: a L<Paws::CloudWatchLogs::GetLogEventsResponse> instance
620              
621             Lists log events from the specified log stream. You can list all the
622             log events or filter using a time range.
623              
624             By default, this operation returns as many log events as can fit in a
625             response size of 1MB (up to 10,000 log events). If the results include
626             tokens, there are more log events available. You can get additional log
627             events by specifying one of the tokens in a subsequent call.
628              
629              
630             =head2 ListTagsLogGroup(LogGroupName => Str)
631              
632             Each argument is described in detail in: L<Paws::CloudWatchLogs::ListTagsLogGroup>
633              
634             Returns: a L<Paws::CloudWatchLogs::ListTagsLogGroupResponse> instance
635              
636             Lists the tags for the specified log group.
637              
638             To add tags, use TagLogGroup. To remove tags, use UntagLogGroup.
639              
640              
641             =head2 PutDestination(DestinationName => Str, RoleArn => Str, TargetArn => Str)
642              
643             Each argument is described in detail in: L<Paws::CloudWatchLogs::PutDestination>
644              
645             Returns: a L<Paws::CloudWatchLogs::PutDestinationResponse> instance
646              
647             Creates or updates a destination. A destination encapsulates a physical
648             resource (such as a Kinesis stream) and enables you to subscribe to a
649             real-time stream of log events of a different account, ingested using
650             PutLogEvents. Currently, the only supported physical resource is a
651             Amazon Kinesis stream belonging to the same account as the destination.
652              
653             A destination controls what is written to its Amazon Kinesis stream
654             through an access policy. By default, C<PutDestination> does not set
655             any access policy with the destination, which means a cross-account
656             user cannot call PutSubscriptionFilter against this destination. To
657             enable this, the destination owner must call PutDestinationPolicy after
658             C<PutDestination>.
659              
660              
661             =head2 PutDestinationPolicy(AccessPolicy => Str, DestinationName => Str)
662              
663             Each argument is described in detail in: L<Paws::CloudWatchLogs::PutDestinationPolicy>
664              
665             Returns: nothing
666              
667             Creates or updates an access policy associated with an existing
668             destination. An access policy is an IAM policy document that is used to
669             authorize claims to register a subscription filter against a given
670             destination.
671              
672              
673             =head2 PutLogEvents(LogEvents => ArrayRef[L<Paws::CloudWatchLogs::InputLogEvent>], LogGroupName => Str, LogStreamName => Str, [SequenceToken => Str])
674              
675             Each argument is described in detail in: L<Paws::CloudWatchLogs::PutLogEvents>
676              
677             Returns: a L<Paws::CloudWatchLogs::PutLogEventsResponse> instance
678              
679             Uploads a batch of log events to the specified log stream.
680              
681             You must include the sequence token obtained from the response of the
682             previous call. An upload in a newly created log stream does not require
683             a sequence token. You can also get the sequence token using
684             DescribeLogStreams.
685              
686             The batch of events must satisfy the following constraints:
687              
688             =over
689              
690             =item *
691              
692             The maximum batch size is 1,048,576 bytes, and this size is calculated
693             as the sum of all event messages in UTF-8, plus 26 bytes for each log
694             event.
695              
696             =item *
697              
698             None of the log events in the batch can be more than 2 hours in the
699             future.
700              
701             =item *
702              
703             None of the log events in the batch can be older than 14 days or the
704             retention period of the log group.
705              
706             =item *
707              
708             The log events in the batch must be in chronological ordered by their
709             timestamp (the time the event occurred, expressed as the number of
710             milliseconds since Jan 1, 1970 00:00:00 UTC).
711              
712             =item *
713              
714             The maximum number of log events in a batch is 10,000.
715              
716             =item *
717              
718             A batch of log events in a single request cannot span more than 24
719             hours. Otherwise, the operation fails.
720              
721             =back
722              
723              
724              
725             =head2 PutMetricFilter(FilterName => Str, FilterPattern => Str, LogGroupName => Str, MetricTransformations => ArrayRef[L<Paws::CloudWatchLogs::MetricTransformation>])
726              
727             Each argument is described in detail in: L<Paws::CloudWatchLogs::PutMetricFilter>
728              
729             Returns: nothing
730              
731             Creates or updates a metric filter and associates it with the specified
732             log group. Metric filters allow you to configure rules to extract
733             metric data from log events ingested through PutLogEvents.
734              
735             The maximum number of metric filters that can be associated with a log
736             group is 100.
737              
738              
739             =head2 PutRetentionPolicy(LogGroupName => Str, RetentionInDays => Int)
740              
741             Each argument is described in detail in: L<Paws::CloudWatchLogs::PutRetentionPolicy>
742              
743             Returns: nothing
744              
745             Sets the retention of the specified log group. A retention policy
746             allows you to configure the number of days you want to retain log
747             events in the specified log group.
748              
749              
750             =head2 PutSubscriptionFilter(DestinationArn => Str, FilterName => Str, FilterPattern => Str, LogGroupName => Str, [Distribution => Str, RoleArn => Str])
751              
752             Each argument is described in detail in: L<Paws::CloudWatchLogs::PutSubscriptionFilter>
753              
754             Returns: nothing
755              
756             Creates or updates a subscription filter and associates it with the
757             specified log group. Subscription filters allow you to subscribe to a
758             real-time stream of log events ingested through PutLogEvents and have
759             them delivered to a specific destination. Currently, the supported
760             destinations are:
761              
762             =over
763              
764             =item *
765              
766             An Amazon Kinesis stream belonging to the same account as the
767             subscription filter, for same-account delivery.
768              
769             =item *
770              
771             A logical destination that belongs to a different account, for
772             cross-account delivery.
773              
774             =item *
775              
776             An Amazon Kinesis Firehose stream that belongs to the same account as
777             the subscription filter, for same-account delivery.
778              
779             =item *
780              
781             An AWS Lambda function that belongs to the same account as the
782             subscription filter, for same-account delivery.
783              
784             =back
785              
786             There can only be one subscription filter associated with a log group.
787             If you are updating an existing filter, you must specify the correct
788             name in C<filterName>. Otherwise, the call will fail because you cannot
789             associate a second filter with a log group.
790              
791              
792             =head2 TagLogGroup(LogGroupName => Str, Tags => L<Paws::CloudWatchLogs::Tags>)
793              
794             Each argument is described in detail in: L<Paws::CloudWatchLogs::TagLogGroup>
795              
796             Returns: nothing
797              
798             Adds or updates the specified tags for the specified log group.
799              
800             To list the tags for a log group, use ListTagsLogGroup. To remove tags,
801             use UntagLogGroup.
802              
803             For more information about tags, see Tag Log Groups in Amazon
804             CloudWatch Logs in the I<Amazon CloudWatch Logs User Guide>.
805              
806              
807             =head2 TestMetricFilter(FilterPattern => Str, LogEventMessages => ArrayRef[Str|Undef])
808              
809             Each argument is described in detail in: L<Paws::CloudWatchLogs::TestMetricFilter>
810              
811             Returns: a L<Paws::CloudWatchLogs::TestMetricFilterResponse> instance
812              
813             Tests the filter pattern of a metric filter against a sample of log
814             event messages. You can use this operation to validate the correctness
815             of a metric filter pattern.
816              
817              
818             =head2 UntagLogGroup(LogGroupName => Str, Tags => ArrayRef[Str|Undef])
819              
820             Each argument is described in detail in: L<Paws::CloudWatchLogs::UntagLogGroup>
821              
822             Returns: nothing
823              
824             Removes the specified tags from the specified log group.
825              
826             To list the tags for a log group, use ListTagsLogGroup. To add tags,
827             use UntagLogGroup.
828              
829              
830              
831              
832             =head1 PAGINATORS
833              
834             Paginator methods are helpers that repetively call methods that return partial results
835              
836             =head2 DescribeAllDestinations(sub { },[DestinationNamePrefix => Str, Limit => Int, NextToken => Str])
837              
838             =head2 DescribeAllDestinations([DestinationNamePrefix => Str, Limit => Int, NextToken => Str])
839              
840              
841             If passed a sub as first parameter, it will call the sub for each element found in :
842              
843             - destinations, passing the object as the first parameter, and the string 'destinations' as the second parameter
844              
845             If not, it will return a a L<Paws::CloudWatchLogs::DescribeDestinationsResponse> instance with all the C<param>s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
846              
847              
848             =head2 DescribeAllLogGroups(sub { },[Limit => Int, LogGroupNamePrefix => Str, NextToken => Str])
849              
850             =head2 DescribeAllLogGroups([Limit => Int, LogGroupNamePrefix => Str, NextToken => Str])
851              
852              
853             If passed a sub as first parameter, it will call the sub for each element found in :
854              
855             - logGroups, passing the object as the first parameter, and the string 'logGroups' as the second parameter
856              
857             If not, it will return a a L<Paws::CloudWatchLogs::DescribeLogGroupsResponse> instance with all the C<param>s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
858              
859              
860             =head2 DescribeAllLogStreams(sub { },LogGroupName => Str, [Descending => Bool, Limit => Int, LogStreamNamePrefix => Str, NextToken => Str, OrderBy => Str])
861              
862             =head2 DescribeAllLogStreams(LogGroupName => Str, [Descending => Bool, Limit => Int, LogStreamNamePrefix => Str, NextToken => Str, OrderBy => Str])
863              
864              
865             If passed a sub as first parameter, it will call the sub for each element found in :
866              
867             - logStreams, passing the object as the first parameter, and the string 'logStreams' as the second parameter
868              
869             If not, it will return a a L<Paws::CloudWatchLogs::DescribeLogStreamsResponse> instance with all the C<param>s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
870              
871              
872             =head2 DescribeAllMetricFilters(sub { },[FilterNamePrefix => Str, Limit => Int, LogGroupName => Str, MetricName => Str, MetricNamespace => Str, NextToken => Str])
873              
874             =head2 DescribeAllMetricFilters([FilterNamePrefix => Str, Limit => Int, LogGroupName => Str, MetricName => Str, MetricNamespace => Str, NextToken => Str])
875              
876              
877             If passed a sub as first parameter, it will call the sub for each element found in :
878              
879             - metricFilters, passing the object as the first parameter, and the string 'metricFilters' as the second parameter
880              
881             If not, it will return a a L<Paws::CloudWatchLogs::DescribeMetricFiltersResponse> instance with all the C<param>s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
882              
883              
884             =head2 DescribeAllSubscriptionFilters(sub { },LogGroupName => Str, [FilterNamePrefix => Str, Limit => Int, NextToken => Str])
885              
886             =head2 DescribeAllSubscriptionFilters(LogGroupName => Str, [FilterNamePrefix => Str, Limit => Int, NextToken => Str])
887              
888              
889             If passed a sub as first parameter, it will call the sub for each element found in :
890              
891             - subscriptionFilters, passing the object as the first parameter, and the string 'subscriptionFilters' as the second parameter
892              
893             If not, it will return a a L<Paws::CloudWatchLogs::DescribeSubscriptionFiltersResponse> instance with all the C<param>s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
894              
895              
896             =head2 FilterAllLogEvents(sub { },LogGroupName => Str, [EndTime => Int, FilterPattern => Str, Interleaved => Bool, Limit => Int, LogStreamNames => ArrayRef[Str|Undef], NextToken => Str, StartTime => Int])
897              
898             =head2 FilterAllLogEvents(LogGroupName => Str, [EndTime => Int, FilterPattern => Str, Interleaved => Bool, Limit => Int, LogStreamNames => ArrayRef[Str|Undef], NextToken => Str, StartTime => Int])
899              
900              
901             If passed a sub as first parameter, it will call the sub for each element found in :
902              
903             - events, passing the object as the first parameter, and the string 'events' as the second parameter
904              
905             - searchedLogStreams, passing the object as the first parameter, and the string 'searchedLogStreams' as the second parameter
906              
907             If not, it will return a a L<Paws::CloudWatchLogs::FilterLogEventsResponse> instance with all the C<param>s; andC<param>s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
908              
909              
910              
911              
912              
913             =head1 SEE ALSO
914              
915             This service class forms part of L<Paws>
916              
917             =head1 BUGS and CONTRIBUTIONS
918              
919             The source code is located here: https://github.com/pplu/aws-sdk-perl
920              
921             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
922              
923             =cut
924