PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` package Paws::DevOpsGuru; use Moose; sub service { 'devops-guru' } sub signing_name { 'devops-guru' } sub version { '2020-12-01' } sub flattened_arrays { 0 } has max_attempts => (is => 'ro', isa => 'Int', default => 5); has retry => (is => 'ro', isa => 'HashRef', default => sub { { base => 'rand', type => 'exponential', growth_factor => 2 } }); has retriables => (is => 'ro', isa => 'ArrayRef', default => sub { [ ] }); with 'Paws::API::Caller', 'Paws::API::EndpointResolver', 'Paws::Net::V4Signature', 'Paws::Net::RestJsonCaller'; sub AddNotificationChannel { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::AddNotificationChannel', @_); return $self->caller->do_call($self, $call_object); } sub DescribeAccountHealth { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::DescribeAccountHealth', @_); return $self->caller->do_call($self, $call_object); } sub DescribeAccountOverview { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::DescribeAccountOverview', @_); return $self->caller->do_call($self, $call_object); } sub DescribeAnomaly { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::DescribeAnomaly', @_); return $self->caller->do_call($self, $call_object); } sub DescribeFeedback { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::DescribeFeedback', @_); return $self->caller->do_call($self, $call_object); } sub DescribeInsight { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::DescribeInsight', @_); return $self->caller->do_call($self, $call_object); } sub DescribeResourceCollectionHealth { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::DescribeResourceCollectionHealth', @_); return $self->caller->do_call($self, $call_object); } sub DescribeServiceIntegration { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::DescribeServiceIntegration', @_); return $self->caller->do_call($self, $call_object); } sub GetCostEstimation { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::GetCostEstimation', @_); return $self->caller->do_call($self, $call_object); } sub GetResourceCollection { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::GetResourceCollection', @_); return $self->caller->do_call($self, $call_object); } sub ListAnomaliesForInsight { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::ListAnomaliesForInsight', @_); return $self->caller->do_call($self, $call_object); } sub ListEvents { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::ListEvents', @_); return $self->caller->do_call($self, $call_object); } sub ListInsights { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::ListInsights', @_); return $self->caller->do_call($self, $call_object); } sub ListNotificationChannels { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::ListNotificationChannels', @_); return $self->caller->do_call($self, $call_object); } sub ListRecommendations { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::ListRecommendations', @_); return $self->caller->do_call($self, $call_object); } sub PutFeedback { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::PutFeedback', @_); return $self->caller->do_call($self, $call_object); } sub RemoveNotificationChannel { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::RemoveNotificationChannel', @_); return $self->caller->do_call($self, $call_object); } sub SearchInsights { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::SearchInsights', @_); return $self->caller->do_call($self, $call_object); } sub StartCostEstimation { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::StartCostEstimation', @_); return $self->caller->do_call($self, $call_object); } sub UpdateResourceCollection { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::UpdateResourceCollection', @_); return $self->caller->do_call($self, $call_object); } sub UpdateServiceIntegration { my $self = shift; my $call_object = $self->new_with_coercions('Paws::DevOpsGuru::UpdateServiceIntegration', @_); return $self->caller->do_call($self, $call_object); } sub DescribeAllResourceCollectionHealth { my $self = shift; my $callback = shift @_ if (ref($_[0]) eq 'CODE'); my $result = $self->DescribeResourceCollectionHealth(@_); my $next_result = $result; if (not defined $callback) { while ($next_result->NextToken) { $next_result = $self->DescribeResourceCollectionHealth(@_, NextToken => $next_result->NextToken); push @{ $result->CloudFormation }, @{ $next_result->CloudFormation }; push @{ $result->Service }, @{ $next_result->Service }; } return $result; } else { while ($result->NextToken) { $callback->($_ => 'CloudFormation') foreach (@{ $result->CloudFormation }); $callback->($_ => 'Service') foreach (@{ $result->Service }); $result = $self->DescribeResourceCollectionHealth(@_, NextToken => $result->NextToken); } $callback->($_ => 'CloudFormation') foreach (@{ $result->CloudFormation }); $callback->($_ => 'Service') foreach (@{ $result->Service }); } return undef } sub GetAllCostEstimation { my $self = shift; my $callback = shift @_ if (ref($_[0]) eq 'CODE'); my $result = $self->GetCostEstimation(@_); my $next_result = $result; if (not defined $callback) { while ($next_result->NextToken) { $next_result = $self->GetCostEstimation(@_, NextToken => $next_result->NextToken); push @{ $result->Costs }, @{ $next_result->Costs }; } return $result; } else { while ($result->NextToken) { $callback->($_ => 'Costs') foreach (@{ $result->Costs }); $result = $self->GetCostEstimation(@_, NextToken => $result->NextToken); } $callback->($_ => 'Costs') foreach (@{ $result->Costs }); } return undef } sub GetAllResourceCollection { my $self = shift; my $callback = shift @_ if (ref($_[0]) eq 'CODE'); my $result = $self->GetResourceCollection(@_); my $next_result = $result; if (not defined $callback) { while ($next_result->NextToken) { $next_result = $self->GetResourceCollection(@_, NextToken => $next_result->NextToken); push @{ $result->ResourceCollection->CloudFormation->StackNames }, @{ $next_result->ResourceCollection->CloudFormation->StackNames }; } return $result; } else { while ($result->NextToken) { $callback->($_ => 'ResourceCollection.CloudFormation.StackNames') foreach (@{ $result->ResourceCollection->CloudFormation->StackNames }); $result = $self->GetResourceCollection(@_, NextToken => $result->NextToken); } $callback->($_ => 'ResourceCollection.CloudFormation.StackNames') foreach (@{ $result->ResourceCollection->CloudFormation->StackNames }); } return undef } sub ListAllAnomaliesForInsight { my $self = shift; my $callback = shift @_ if (ref($_[0]) eq 'CODE'); my $result = $self->ListAnomaliesForInsight(@_); my $next_result = $result; if (not defined $callback) { while ($next_result->NextToken) { $next_result = $self->ListAnomaliesForInsight(@_, NextToken => $next_result->NextToken); push @{ $result->ReactiveAnomalies }, @{ $next_result->ReactiveAnomalies }; push @{ $result->ProactiveAnomalies }, @{ $next_result->ProactiveAnomalies }; } return $result; } else { while ($result->NextToken) { $callback->($_ => 'ReactiveAnomalies') foreach (@{ $result->ReactiveAnomalies }); $callback->($_ => 'ProactiveAnomalies') foreach (@{ $result->ProactiveAnomalies }); $result = $self->ListAnomaliesForInsight(@_, NextToken => $result->NextToken); } $callback->($_ => 'ReactiveAnomalies') foreach (@{ $result->ReactiveAnomalies }); $callback->($_ => 'ProactiveAnomalies') foreach (@{ $result->ProactiveAnomalies }); } return undef } sub ListAllEvents { my $self = shift; my $callback = shift @_ if (ref($_[0]) eq 'CODE'); my $result = $self->ListEvents(@_); my $next_result = $result; if (not defined $callback) { while ($next_result->NextToken) { $next_result = $self->ListEvents(@_, NextToken => $next_result->NextToken); push @{ $result->Events }, @{ $next_result->Events }; } return $result; } else { while ($result->NextToken) { $callback->($_ => 'Events') foreach (@{ $result->Events }); $result = $self->ListEvents(@_, NextToken => $result->NextToken); } $callback->($_ => 'Events') foreach (@{ $result->Events }); } return undef } sub ListAllInsights { my $self = shift; my $callback = shift @_ if (ref($_[0]) eq 'CODE'); my $result = $self->ListInsights(@_); my $next_result = $result; if (not defined $callback) { while ($next_result->NextToken) { $next_result = $self->ListInsights(@_, NextToken => $next_result->NextToken); push @{ $result->ProactiveInsights }, @{ $next_result->ProactiveInsights }; push @{ $result->ReactiveInsights }, @{ $next_result->ReactiveInsights }; } return $result; } else { while ($result->NextToken) { $callback->($_ => 'ProactiveInsights') foreach (@{ $result->ProactiveInsights }); $callback->($_ => 'ReactiveInsights') foreach (@{ $result->ReactiveInsights }); $result = $self->ListInsights(@_, NextToken => $result->NextToken); } $callback->($_ => 'ProactiveInsights') foreach (@{ $result->ProactiveInsights }); $callback->($_ => 'ReactiveInsights') foreach (@{ $result->ReactiveInsights }); } return undef } sub ListAllNotificationChannels { my $self = shift; my $callback = shift @_ if (ref($_[0]) eq 'CODE'); my $result = $self->ListNotificationChannels(@_); my $next_result = $result; if (not defined $callback) { while ($next_result->NextToken) { $next_result = $self->ListNotificationChannels(@_, NextToken => $next_result->NextToken); push @{ $result->Channels }, @{ $next_result->Channels }; } return $result; } else { while ($result->NextToken) { $callback->($_ => 'Channels') foreach (@{ $result->Channels }); $result = $self->ListNotificationChannels(@_, NextToken => $result->NextToken); } $callback->($_ => 'Channels') foreach (@{ $result->Channels }); } return undef } sub ListAllRecommendations { my $self = shift; my $callback = shift @_ if (ref($_[0]) eq 'CODE'); my $result = $self->ListRecommendations(@_); my $next_result = $result; if (not defined $callback) { while ($next_result->NextToken) { $next_result = $self->ListRecommendations(@_, NextToken => $next_result->NextToken); push @{ $result->Recommendations }, @{ $next_result->Recommendations }; } return $result; } else { while ($result->NextToken) { $callback->($_ => 'Recommendations') foreach (@{ $result->Recommendations }); $result = $self->ListRecommendations(@_, NextToken => $result->NextToken); } $callback->($_ => 'Recommendations') foreach (@{ $result->Recommendations }); } return undef } sub SearchAllInsights { my $self = shift; my $callback = shift @_ if (ref($_[0]) eq 'CODE'); my $result = $self->SearchInsights(@_); my $next_result = $result; if (not defined $callback) { while ($next_result->NextToken) { $next_result = $self->SearchInsights(@_, NextToken => $next_result->NextToken); push @{ $result->ProactiveInsights }, @{ $next_result->ProactiveInsights }; push @{ $result->ReactiveInsights }, @{ $next_result->ReactiveInsights }; } return $result; } else { while ($result->NextToken) { $callback->($_ => 'ProactiveInsights') foreach (@{ $result->ProactiveInsights }); $callback->($_ => 'ReactiveInsights') foreach (@{ $result->ReactiveInsights }); $result = $self->SearchInsights(@_, NextToken => $result->NextToken); } $callback->($_ => 'ProactiveInsights') foreach (@{ $result->ProactiveInsights }); $callback->($_ => 'ReactiveInsights') foreach (@{ $result->ReactiveInsights }); } return undef } sub operations { qw/AddNotificationChannel DescribeAccountHealth DescribeAccountOverview DescribeAnomaly DescribeFeedback DescribeInsight DescribeResourceCollectionHealth DescribeServiceIntegration GetCostEstimation GetResourceCollection ListAnomaliesForInsight ListEvents ListInsights ListNotificationChannels ListRecommendations PutFeedback RemoveNotificationChannel SearchInsights StartCostEstimation UpdateResourceCollection UpdateServiceIntegration / } 1; ### main pod documentation begin ### =head1 NAME Paws::DevOpsGuru - Perl Interface to AWS Amazon DevOps Guru =head1 SYNOPSIS use Paws; my $obj = Paws->service('DevOpsGuru'); my $res = $obj->Method( Arg1 => $val1, Arg2 => [ 'V1', 'V2' ], # if Arg3 is an object, the HashRef will be used as arguments to the constructor # of the arguments type Arg3 => { Att1 => 'Val1' }, # if Arg4 is an array of objects, the HashRefs will be passed as arguments to # the constructor of the arguments type Arg4 => [ { Att1 => 'Val1' }, { Att1 => 'Val2' } ], ); =head1 DESCRIPTION Amazon DevOps Guru is a fully managed service that helps you identify anomalous behavior in business critical operational applications. You specify the AWS resources that you want DevOps Guru to cover, then the Amazon CloudWatch metrics and AWS CloudTrail events related to those resources are analyzed. When anomalous behavior is detected, DevOps Guru creates an I that includes recommendations, related events, and related metrics that can help you improve your operational applications. For more information, see What is Amazon DevOps Guru (https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html). You can specify 1 or 2 Amazon Simple Notification Service topics so you are notified every time a new insight is created. You can also enable DevOps Guru to generate an OpsItem in AWS Systems Manager for each insight to help you manage and track your work addressing insights. To learn about the DevOps Guru workflow, see How DevOps Guru works (https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html#how-it-works). To learn about DevOps Guru concepts, see Concepts in DevOps Guru (https://docs.aws.amazon.com/devops-guru/latest/userguide/concepts.html). For the AWS API documentation, see L =head1 METHODS =head2 AddNotificationChannel =over =item Config => L =back Each argument is described in detail in: L Returns: a L instance Adds a notification channel to DevOps Guru. A notification channel is used to notify you about important DevOps Guru events, such as when an insight is generated. If you use an Amazon SNS topic in another account, you must attach a policy to it that grants DevOps Guru permission to it notifications. DevOps Guru adds the required policy on your behalf to send notifications using Amazon SNS in your account. For more information, see Permissions for cross account Amazon SNS topics (https://docs.aws.amazon.com/devops-guru/latest/userguide/sns-required-permissions.html). If you use an Amazon SNS topic that is encrypted by an AWS Key Management Service customer-managed key (CMK), then you must add permissions to the CMK. For more information, see Permissions for AWS KMSEencrypted Amazon SNS topics (https://docs.aws.amazon.com/devops-guru/latest/userguide/sns-kms-permissions.html). =head2 DescribeAccountHealth Each argument is described in detail in: L Returns: a L instance Returns the number of open reactive insights, the number of open proactive insights, and the number of metrics analyzed in your AWS account. Use these numbers to gauge the health of operations in your AWS account. =head2 DescribeAccountOverview =over =item FromTime => Str =item [ToTime => Str] =back Each argument is described in detail in: L Returns: a L instance For the time range passed in, returns the number of open reactive insight that were created, the number of open proactive insights that were created, and the Mean Time to Recover (MTTR) for all closed reactive insights. =head2 DescribeAnomaly =over =item Id => Str =back Each argument is described in detail in: L Returns: a L instance Returns details about an anomaly that you specify using its ID. =head2 DescribeFeedback =over =item [InsightId => Str] =back Each argument is described in detail in: L Returns: a L instance Returns the most recent feedback submitted in the current AWS account and Region. =head2 DescribeInsight =over =item Id => Str =back Each argument is described in detail in: L Returns: a L instance Returns details about an insight that you specify using its ID. =head2 DescribeResourceCollectionHealth =over =item ResourceCollectionType => Str =item [NextToken => Str] =back Each argument is described in detail in: L Returns: a L instance Returns the number of open proactive insights, open reactive insights, and the Mean Time to Recover (MTTR) for all closed insights in resource collections in your account. You specify the type of AWS resources collection. The one type of AWS resource collection supported is AWS CloudFormation stacks. DevOps Guru can be configured to analyze only the AWS resources that are defined in the stacks. You can specify up to 500 AWS CloudFormation stacks. =head2 DescribeServiceIntegration Each argument is described in detail in: L Returns: a L instance Returns the integration status of services that are integrated with DevOps Guru. The one service that can be integrated with DevOps Guru is AWS Systems Manager, which can be used to create an OpsItem for each generated insight. =head2 GetCostEstimation =over =item [NextToken => Str] =back Each argument is described in detail in: L Returns: a L instance Returns an estimate of the monthly cost for DevOps Guru to analyze your AWS resources. For more information, see Estimate your Amazon DevOps Guru costs (https://docs.aws.amazon.com/devops-guru/latest/userguide/cost-estimate.html) and Amazon DevOps Guru pricing (http://aws.amazon.com/devops-guru/pricing/). =head2 GetResourceCollection =over =item ResourceCollectionType => Str =item [NextToken => Str] =back Each argument is described in detail in: L Returns: a L instance Returns lists AWS resources that are of the specified resource collection type. The one type of AWS resource collection supported is AWS CloudFormation stacks. DevOps Guru can be configured to analyze only the AWS resources that are defined in the stacks. You can specify up to 500 AWS CloudFormation stacks. =head2 ListAnomaliesForInsight =over =item InsightId => Str =item [MaxResults => Int] =item [NextToken => Str] =item [StartTimeRange => L] =back Each argument is described in detail in: L Returns: a L instance Returns a list of the anomalies that belong to an insight that you specify using its ID. =head2 ListEvents =over =item Filters => L =item [MaxResults => Int] =item [NextToken => Str] =back Each argument is described in detail in: L Returns: a L instance Returns a list of the events emitted by the resources that are evaluated by DevOps Guru. You can use filters to specify which events are returned. =head2 ListInsights =over =item StatusFilter => L =item [MaxResults => Int] =item [NextToken => Str] =back Each argument is described in detail in: L Returns: a L instance Returns a list of insights in your AWS account. You can specify which insights are returned by their start time and status (C, C, or C). =head2 ListNotificationChannels =over =item [NextToken => Str] =back Each argument is described in detail in: L Returns: a L instance Returns a list of notification channels configured for DevOps Guru. Each notification channel is used to notify you when DevOps Guru generates an insight that contains information about how to improve your operations. The one supported notification channel is Amazon Simple Notification Service (Amazon SNS). =head2 ListRecommendations =over =item InsightId => Str =item [Locale => Str] =item [NextToken => Str] =back Each argument is described in detail in: L Returns: a L instance Returns a list of a specified insight's recommendations. Each recommendation includes a list of related metrics and a list of related events. =head2 PutFeedback =over =item [InsightFeedback => L] =back Each argument is described in detail in: L Returns: a L instance Collects customer feedback about the specified insight. =head2 RemoveNotificationChannel =over =item Id => Str =back Each argument is described in detail in: L Returns: a L instance Removes a notification channel from DevOps Guru. A notification channel is used to notify you when DevOps Guru generates an insight that contains information about how to improve your operations. =head2 SearchInsights =over =item StartTimeRange => L =item Type => Str =item [Filters => L] =item [MaxResults => Int] =item [NextToken => Str] =back Each argument is described in detail in: L Returns: a L instance Returns a list of insights in your AWS account. You can specify which insights are returned by their start time, one or more statuses (C, C, and C), one or more severities (C, C, and C), and type (C or C). Use the C parameter to specify status and severity search parameters. Use the C parameter to specify C or C in your search. =head2 StartCostEstimation =over =item ResourceCollection => L =item [ClientToken => Str] =back Each argument is described in detail in: L Returns: a L instance Starts the creation of an estimate of the monthly cost to analyze your AWS resources. =head2 UpdateResourceCollection =over =item Action => Str =item ResourceCollection => L =back Each argument is described in detail in: L Returns: a L instance Updates the collection of resources that DevOps Guru analyzes. The one type of AWS resource collection supported is AWS CloudFormation stacks. DevOps Guru can be configured to analyze only the AWS resources that are defined in the stacks. You can specify up to 500 AWS CloudFormation stacks. This method also creates the IAM role required for you to use DevOps Guru. =head2 UpdateServiceIntegration =over =item ServiceIntegration => L =back Each argument is described in detail in: L Returns: a L instance Enables or disables integration with a service that can be integrated with DevOps Guru. The one service that can be integrated with DevOps Guru is AWS Systems Manager, which can be used to create an OpsItem for each generated insight. =head1 PAGINATORS Paginator methods are helpers that repetively call methods that return partial results =head2 DescribeAllResourceCollectionHealth(sub { },ResourceCollectionType => Str, [NextToken => Str]) =head2 DescribeAllResourceCollectionHealth(ResourceCollectionType => Str, [NextToken => Str]) If passed a sub as first parameter, it will call the sub for each element found in : - CloudFormation, passing the object as the first parameter, and the string 'CloudFormation' as the second parameter - Service, passing the object as the first parameter, and the string 'Service' as the second parameter If not, it will return a a L instance with all the Cs; andCs; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory. =head2 GetAllCostEstimation(sub { },[NextToken => Str]) =head2 GetAllCostEstimation([NextToken => Str]) If passed a sub as first parameter, it will call the sub for each element found in : - Costs, passing the object as the first parameter, and the string 'Costs' as the second parameter If not, it will return a a L instance with all the Cs; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory. =head2 GetAllResourceCollection(sub { },ResourceCollectionType => Str, [NextToken => Str]) =head2 GetAllResourceCollection(ResourceCollectionType => Str, [NextToken => Str]) If passed a sub as first parameter, it will call the sub for each element found in : - ResourceCollection.CloudFormation.StackNames, passing the object as the first parameter, and the string 'ResourceCollection.CloudFormation.StackNames' as the second parameter If not, it will return a a L instance with all the Cs; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory. =head2 ListAllAnomaliesForInsight(sub { },InsightId => Str, [MaxResults => Int, NextToken => Str, StartTimeRange => L]) =head2 ListAllAnomaliesForInsight(InsightId => Str, [MaxResults => Int, NextToken => Str, StartTimeRange => L]) If passed a sub as first parameter, it will call the sub for each element found in : - ReactiveAnomalies, passing the object as the first parameter, and the string 'ReactiveAnomalies' as the second parameter - ProactiveAnomalies, passing the object as the first parameter, and the string 'ProactiveAnomalies' as the second parameter If not, it will return a a L instance with all the Cs; andCs; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory. =head2 ListAllEvents(sub { },Filters => L, [MaxResults => Int, NextToken => Str]) =head2 ListAllEvents(Filters => L, [MaxResults => Int, NextToken => Str]) If passed a sub as first parameter, it will call the sub for each element found in : - Events, passing the object as the first parameter, and the string 'Events' as the second parameter If not, it will return a a L instance with all the Cs; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory. =head2 ListAllInsights(sub { },StatusFilter => L, [MaxResults => Int, NextToken => Str]) =head2 ListAllInsights(StatusFilter => L, [MaxResults => Int, NextToken => Str]) If passed a sub as first parameter, it will call the sub for each element found in : - ProactiveInsights, passing the object as the first parameter, and the string 'ProactiveInsights' as the second parameter - ReactiveInsights, passing the object as the first parameter, and the string 'ReactiveInsights' as the second parameter If not, it will return a a L instance with all the Cs; andCs; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory. =head2 ListAllNotificationChannels(sub { },[NextToken => Str]) =head2 ListAllNotificationChannels([NextToken => Str]) If passed a sub as first parameter, it will call the sub for each element found in : - Channels, passing the object as the first parameter, and the string 'Channels' as the second parameter If not, it will return a a L instance with all the Cs; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory. =head2 ListAllRecommendations(sub { },InsightId => Str, [Locale => Str, NextToken => Str]) =head2 ListAllRecommendations(InsightId => Str, [Locale => Str, NextToken => Str]) If passed a sub as first parameter, it will call the sub for each element found in : - Recommendations, passing the object as the first parameter, and the string 'Recommendations' as the second parameter If not, it will return a a L instance with all the Cs; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory. =head2 SearchAllInsights(sub { },StartTimeRange => L, Type => Str, [Filters => L, MaxResults => Int, NextToken => Str]) =head2 SearchAllInsights(StartTimeRange => L, Type => Str, [Filters => L, MaxResults => Int, NextToken => Str]) If passed a sub as first parameter, it will call the sub for each element found in : - ProactiveInsights, passing the object as the first parameter, and the string 'ProactiveInsights' as the second parameter - ReactiveInsights, passing the object as the first parameter, and the string 'ReactiveInsights' as the second parameter If not, it will return a a L instance with all the Cs; andCs; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory. =head1 SEE ALSO This service class forms part of L =head1 BUGS and CONTRIBUTIONS The source code is located here: L Please report bugs to: L =cut