:doc:`DevOpsGuru <../../devops-guru>` / Client / list_insights

*************
list_insights
*************



.. py:method:: DevOpsGuru.Client.list_insights(**kwargs)

  

  Returns a list of insights in your Amazon Web Services account. You can specify which insights are returned by their start time and status ( ``ONGOING``, ``CLOSED``, or ``ANY``).

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/devops-guru-2020-12-01/ListInsights>`_  


  **Request Syntax**
  ::

    response = client.list_insights(
        StatusFilter={
            'Ongoing': {
                'Type': 'REACTIVE'|'PROACTIVE'
            },
            'Closed': {
                'Type': 'REACTIVE'|'PROACTIVE',
                'EndTimeRange': {
                    'FromTime': datetime(2015, 1, 1),
                    'ToTime': datetime(2015, 1, 1)
                }
            },
            'Any': {
                'Type': 'REACTIVE'|'PROACTIVE',
                'StartTimeRange': {
                    'FromTime': datetime(2015, 1, 1),
                    'ToTime': datetime(2015, 1, 1)
                }
            }
        },
        MaxResults=123,
        NextToken='string'
    )
    
  :type StatusFilter: dict
  :param StatusFilter: **[REQUIRED]** 

    A filter used to filter the returned insights by their status. You can specify one status filter.

    

  
    - **Ongoing** *(dict) --* 

      A ``ListInsightsAnyStatusFilter`` that specifies ongoing insights that are either ``REACTIVE`` or ``PROACTIVE``.

      

    
      - **Type** *(string) --* **[REQUIRED]** 

        Use to filter for either ``REACTIVE`` or ``PROACTIVE`` insights.

        

      
    
    - **Closed** *(dict) --* 

      A ``ListInsightsClosedStatusFilter`` that specifies closed insights that are either ``REACTIVE`` or ``PROACTIVE``.

      

    
      - **Type** *(string) --* **[REQUIRED]** 

        Use to filter for either ``REACTIVE`` or ``PROACTIVE`` insights.

        

      
      - **EndTimeRange** *(dict) --* **[REQUIRED]** 

        A time range used to specify when the behavior of the filtered insights ended.

        

      
        - **FromTime** *(datetime) --* 

          The earliest end time in the time range.

          

        
        - **ToTime** *(datetime) --* 

          The latest end time in the time range.

          

        
      
    
    - **Any** *(dict) --* 

      A ``ListInsightsAnyStatusFilter`` that specifies insights of any status that are either ``REACTIVE`` or ``PROACTIVE``.

      

    
      - **Type** *(string) --* **[REQUIRED]** 

        Use to filter for either ``REACTIVE`` or ``PROACTIVE`` insights.

        

      
      - **StartTimeRange** *(dict) --* **[REQUIRED]** 

        A time range used to specify when the behavior of the filtered insights started.

        

      
        - **FromTime** *(datetime) --* 

          The start time of the time range.

          

        
        - **ToTime** *(datetime) --* 

          The end time of the time range.

          

        
      
    
  
  :type MaxResults: integer
  :param MaxResults: 

    The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned ``nextToken`` value.

    

  
  :type NextToken: string
  :param NextToken: 

    The pagination token to use to retrieve the next page of results for this operation. If this value is null, it retrieves the first page.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'ProactiveInsights': [
              {
                  'Id': 'string',
                  'Name': 'string',
                  'Severity': 'LOW'|'MEDIUM'|'HIGH',
                  'Status': 'ONGOING'|'CLOSED',
                  'InsightTimeRange': {
                      'StartTime': datetime(2015, 1, 1),
                      'EndTime': datetime(2015, 1, 1)
                  },
                  'PredictionTimeRange': {
                      'StartTime': datetime(2015, 1, 1),
                      'EndTime': datetime(2015, 1, 1)
                  },
                  'ResourceCollection': {
                      'CloudFormation': {
                          'StackNames': [
                              'string',
                          ]
                      },
                      'Tags': [
                          {
                              'AppBoundaryKey': 'string',
                              'TagValues': [
                                  'string',
                              ]
                          },
                      ]
                  },
                  'ServiceCollection': {
                      'ServiceNames': [
                          'API_GATEWAY'|'APPLICATION_ELB'|'AUTO_SCALING_GROUP'|'CLOUD_FRONT'|'DYNAMO_DB'|'EC2'|'ECS'|'EKS'|'ELASTIC_BEANSTALK'|'ELASTI_CACHE'|'ELB'|'ES'|'KINESIS'|'LAMBDA'|'NAT_GATEWAY'|'NETWORK_ELB'|'RDS'|'REDSHIFT'|'ROUTE_53'|'S3'|'SAGE_MAKER'|'SNS'|'SQS'|'STEP_FUNCTIONS'|'SWF',
                      ]
                  },
                  'AssociatedResourceArns': [
                      'string',
                  ]
              },
          ],
          'ReactiveInsights': [
              {
                  'Id': 'string',
                  'Name': 'string',
                  'Severity': 'LOW'|'MEDIUM'|'HIGH',
                  'Status': 'ONGOING'|'CLOSED',
                  'InsightTimeRange': {
                      'StartTime': datetime(2015, 1, 1),
                      'EndTime': datetime(2015, 1, 1)
                  },
                  'ResourceCollection': {
                      'CloudFormation': {
                          'StackNames': [
                              'string',
                          ]
                      },
                      'Tags': [
                          {
                              'AppBoundaryKey': 'string',
                              'TagValues': [
                                  'string',
                              ]
                          },
                      ]
                  },
                  'ServiceCollection': {
                      'ServiceNames': [
                          'API_GATEWAY'|'APPLICATION_ELB'|'AUTO_SCALING_GROUP'|'CLOUD_FRONT'|'DYNAMO_DB'|'EC2'|'ECS'|'EKS'|'ELASTIC_BEANSTALK'|'ELASTI_CACHE'|'ELB'|'ES'|'KINESIS'|'LAMBDA'|'NAT_GATEWAY'|'NETWORK_ELB'|'RDS'|'REDSHIFT'|'ROUTE_53'|'S3'|'SAGE_MAKER'|'SNS'|'SQS'|'STEP_FUNCTIONS'|'SWF',
                      ]
                  },
                  'AssociatedResourceArns': [
                      'string',
                  ]
              },
          ],
          'NextToken': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **ProactiveInsights** *(list) --* 

        The returned list of proactive insights.

        
        

        - *(dict) --* 

          Details about a proactive insight. This object is returned by ``DescribeInsight.``

          
          

          - **Id** *(string) --* 

            The ID of the proactive insight.

            
          

          - **Name** *(string) --* 

            The name of the proactive insight.

            
          

          - **Severity** *(string) --* 

            The severity of the insight. For more information, see `Understanding insight severities <https://docs.aws.amazon.com/devops-guru/latest/userguide/working-with-insights.html#understanding-insights-severities>`__ in the *Amazon DevOps Guru User Guide*.

            
          

          - **Status** *(string) --* 

            The status of the proactive insight.

            
          

          - **InsightTimeRange** *(dict) --* 

            A time ranged that specifies when the observed behavior in an insight started and ended.

            
            

            - **StartTime** *(datetime) --* 

              The time when the behavior described in an insight started.

              
            

            - **EndTime** *(datetime) --* 

              The time when the behavior described in an insight ended.

              
        
          

          - **PredictionTimeRange** *(dict) --* 

            The time range during which anomalous behavior in a proactive anomaly or an insight is expected to occur.

            
            

            - **StartTime** *(datetime) --* 

              The time range during which a metric limit is expected to be exceeded. This applies to proactive insights only.

              
            

            - **EndTime** *(datetime) --* 

              The time when the behavior in a proactive insight is expected to end.

              
        
          

          - **ResourceCollection** *(dict) --* 

            A collection of Amazon Web Services resources supported by DevOps Guru. The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag *key*. You can specify up to 500 Amazon Web Services CloudFormation stacks.

            
            

            - **CloudFormation** *(dict) --* 

              An array of the names of Amazon Web Services CloudFormation stacks. The stacks define Amazon Web Services resources that DevOps Guru analyzes. You can specify up to 500 Amazon Web Services CloudFormation stacks.

              
              

              - **StackNames** *(list) --* 

                An array of CloudFormation stack names.

                
                

                - *(string) --* 
            
          
            

            - **Tags** *(list) --* 

              The Amazon Web Services tags that are used by resources in the resource collection.

               

              Tags help you identify and organize your Amazon Web Services resources. Many Amazon Web Services services support tagging, so you can assign the same tag to resources from different services to indicate that the resources are related. For example, you can assign the same tag to an Amazon DynamoDB table resource that you assign to an Lambda function. For more information about using tags, see the `Tagging best practices <https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html>`__ whitepaper.

               

              Each Amazon Web Services tag has two parts.

               

              
              * A tag *key* (for example, ``CostCenter``, ``Environment``, ``Project``, or ``Secret``). Tag *keys* are case-sensitive.
               
              * An optional field known as a tag *value* (for example, ``111122223333``, ``Production``, or a team name). Omitting the tag *value* is the same as using an empty string. Like tag *keys*, tag *values* are case-sensitive.
              

               

              Together these are known as *key*-*value* pairs.

               

              .. warning::

                 

                The string used for a *key* in a tag that you use to define your resource coverage must begin with the prefix ``Devops-guru-``. The tag *key* might be ``DevOps-Guru-deployment-application`` or ``devops-guru-rds-application``. When you create a *key*, the case of characters in the *key* can be whatever you choose. After you create a *key*, it is case-sensitive. For example, DevOps Guru works with a *key* named ``devops-guru-rds`` and a *key* named ``DevOps-Guru-RDS``, and these act as two different *keys*. Possible *key*/*value* pairs in your application might be ``Devops-Guru-production-application/RDS`` or ``Devops-Guru-production-application/containers``.

                

              
              

              - *(dict) --* 

                A collection of Amazon Web Services tags.

                 

                Tags help you identify and organize your Amazon Web Services resources. Many Amazon Web Services services support tagging, so you can assign the same tag to resources from different services to indicate that the resources are related. For example, you can assign the same tag to an Amazon DynamoDB table resource that you assign to an Lambda function. For more information about using tags, see the `Tagging best practices <https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html>`__ whitepaper.

                 

                Each Amazon Web Services tag has two parts.

                 

                
                * A tag *key* (for example, ``CostCenter``, ``Environment``, ``Project``, or ``Secret``). Tag *keys* are case-sensitive.
                 
                * An optional field known as a tag *value* (for example, ``111122223333``, ``Production``, or a team name). Omitting the tag *value* is the same as using an empty string. Like tag *keys*, tag *values* are case-sensitive.
                

                 

                Together these are known as *key*-*value* pairs.

                 

                .. warning::

                   

                  The string used for a *key* in a tag that you use to define your resource coverage must begin with the prefix ``Devops-guru-``. The tag *key* might be ``DevOps-Guru-deployment-application`` or ``devops-guru-rds-application``. When you create a *key*, the case of characters in the *key* can be whatever you choose. After you create a *key*, it is case-sensitive. For example, DevOps Guru works with a *key* named ``devops-guru-rds`` and a *key* named ``DevOps-Guru-RDS``, and these act as two different *keys*. Possible *key*/*value* pairs in your application might be ``Devops-Guru-production-application/RDS`` or ``Devops-Guru-production-application/containers``.

                  

                
                

                - **AppBoundaryKey** *(string) --* 

                  An Amazon Web Services tag *key* that is used to identify the Amazon Web Services resources that DevOps Guru analyzes. All Amazon Web Services resources in your account and Region tagged with this *key* make up your DevOps Guru application and analysis boundary.

                   

                  .. warning::

                     

                    The string used for a *key* in a tag that you use to define your resource coverage must begin with the prefix ``Devops-guru-``. The tag *key* might be ``DevOps-Guru-deployment-application`` or ``devops-guru-rds-application``. When you create a *key*, the case of characters in the *key* can be whatever you choose. After you create a *key*, it is case-sensitive. For example, DevOps Guru works with a *key* named ``devops-guru-rds`` and a *key* named ``DevOps-Guru-RDS``, and these act as two different *keys*. Possible *key*/*value* pairs in your application might be ``Devops-Guru-production-application/RDS`` or ``Devops-Guru-production-application/containers``.

                    

                  
                

                - **TagValues** *(list) --* 

                  The values in an Amazon Web Services tag collection.

                   

                  The tag's *value* is an optional field used to associate a string with the tag *key* (for example, ``111122223333``, ``Production``, or a team name). The *key* and *value* are the tag's *key* pair. Omitting the tag *value* is the same as using an empty string. Like tag *keys*, tag *values* are case-sensitive. You can specify a maximum of 256 characters for a tag value.

                  
                  

                  - *(string) --* 
              
            
          
        
          

          - **ServiceCollection** *(dict) --* 

            A collection of the names of Amazon Web Services services.

            
            

            - **ServiceNames** *(list) --* 

              An array of strings that each specifies the name of an Amazon Web Services service.

              
              

              - *(string) --* 
          
        
          

          - **AssociatedResourceArns** *(list) --* 

            The Amazon Resource Names (ARNs) of the Amazon Web Services resources that generated this insight.

            
            

            - *(string) --* 
        
      
    
      

      - **ReactiveInsights** *(list) --* 

        The returned list of reactive insights.

        
        

        - *(dict) --* 

          Information about a reactive insight. This object is returned by ``DescribeInsight.``

          
          

          - **Id** *(string) --* 

            The ID of a reactive summary.

            
          

          - **Name** *(string) --* 

            The name of a reactive insight.

            
          

          - **Severity** *(string) --* 

            The severity of the insight. For more information, see `Understanding insight severities <https://docs.aws.amazon.com/devops-guru/latest/userguide/working-with-insights.html#understanding-insights-severities>`__ in the *Amazon DevOps Guru User Guide*.

            
          

          - **Status** *(string) --* 

            The status of a reactive insight.

            
          

          - **InsightTimeRange** *(dict) --* 

            A time ranged that specifies when the observed behavior in an insight started and ended.

            
            

            - **StartTime** *(datetime) --* 

              The time when the behavior described in an insight started.

              
            

            - **EndTime** *(datetime) --* 

              The time when the behavior described in an insight ended.

              
        
          

          - **ResourceCollection** *(dict) --* 

            A collection of Amazon Web Services resources supported by DevOps Guru. The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag *key*. You can specify up to 500 Amazon Web Services CloudFormation stacks.

            
            

            - **CloudFormation** *(dict) --* 

              An array of the names of Amazon Web Services CloudFormation stacks. The stacks define Amazon Web Services resources that DevOps Guru analyzes. You can specify up to 500 Amazon Web Services CloudFormation stacks.

              
              

              - **StackNames** *(list) --* 

                An array of CloudFormation stack names.

                
                

                - *(string) --* 
            
          
            

            - **Tags** *(list) --* 

              The Amazon Web Services tags that are used by resources in the resource collection.

               

              Tags help you identify and organize your Amazon Web Services resources. Many Amazon Web Services services support tagging, so you can assign the same tag to resources from different services to indicate that the resources are related. For example, you can assign the same tag to an Amazon DynamoDB table resource that you assign to an Lambda function. For more information about using tags, see the `Tagging best practices <https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html>`__ whitepaper.

               

              Each Amazon Web Services tag has two parts.

               

              
              * A tag *key* (for example, ``CostCenter``, ``Environment``, ``Project``, or ``Secret``). Tag *keys* are case-sensitive.
               
              * An optional field known as a tag *value* (for example, ``111122223333``, ``Production``, or a team name). Omitting the tag *value* is the same as using an empty string. Like tag *keys*, tag *values* are case-sensitive.
              

               

              Together these are known as *key*-*value* pairs.

               

              .. warning::

                 

                The string used for a *key* in a tag that you use to define your resource coverage must begin with the prefix ``Devops-guru-``. The tag *key* might be ``DevOps-Guru-deployment-application`` or ``devops-guru-rds-application``. When you create a *key*, the case of characters in the *key* can be whatever you choose. After you create a *key*, it is case-sensitive. For example, DevOps Guru works with a *key* named ``devops-guru-rds`` and a *key* named ``DevOps-Guru-RDS``, and these act as two different *keys*. Possible *key*/*value* pairs in your application might be ``Devops-Guru-production-application/RDS`` or ``Devops-Guru-production-application/containers``.

                

              
              

              - *(dict) --* 

                A collection of Amazon Web Services tags.

                 

                Tags help you identify and organize your Amazon Web Services resources. Many Amazon Web Services services support tagging, so you can assign the same tag to resources from different services to indicate that the resources are related. For example, you can assign the same tag to an Amazon DynamoDB table resource that you assign to an Lambda function. For more information about using tags, see the `Tagging best practices <https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html>`__ whitepaper.

                 

                Each Amazon Web Services tag has two parts.

                 

                
                * A tag *key* (for example, ``CostCenter``, ``Environment``, ``Project``, or ``Secret``). Tag *keys* are case-sensitive.
                 
                * An optional field known as a tag *value* (for example, ``111122223333``, ``Production``, or a team name). Omitting the tag *value* is the same as using an empty string. Like tag *keys*, tag *values* are case-sensitive.
                

                 

                Together these are known as *key*-*value* pairs.

                 

                .. warning::

                   

                  The string used for a *key* in a tag that you use to define your resource coverage must begin with the prefix ``Devops-guru-``. The tag *key* might be ``DevOps-Guru-deployment-application`` or ``devops-guru-rds-application``. When you create a *key*, the case of characters in the *key* can be whatever you choose. After you create a *key*, it is case-sensitive. For example, DevOps Guru works with a *key* named ``devops-guru-rds`` and a *key* named ``DevOps-Guru-RDS``, and these act as two different *keys*. Possible *key*/*value* pairs in your application might be ``Devops-Guru-production-application/RDS`` or ``Devops-Guru-production-application/containers``.

                  

                
                

                - **AppBoundaryKey** *(string) --* 

                  An Amazon Web Services tag *key* that is used to identify the Amazon Web Services resources that DevOps Guru analyzes. All Amazon Web Services resources in your account and Region tagged with this *key* make up your DevOps Guru application and analysis boundary.

                   

                  .. warning::

                     

                    The string used for a *key* in a tag that you use to define your resource coverage must begin with the prefix ``Devops-guru-``. The tag *key* might be ``DevOps-Guru-deployment-application`` or ``devops-guru-rds-application``. When you create a *key*, the case of characters in the *key* can be whatever you choose. After you create a *key*, it is case-sensitive. For example, DevOps Guru works with a *key* named ``devops-guru-rds`` and a *key* named ``DevOps-Guru-RDS``, and these act as two different *keys*. Possible *key*/*value* pairs in your application might be ``Devops-Guru-production-application/RDS`` or ``Devops-Guru-production-application/containers``.

                    

                  
                

                - **TagValues** *(list) --* 

                  The values in an Amazon Web Services tag collection.

                   

                  The tag's *value* is an optional field used to associate a string with the tag *key* (for example, ``111122223333``, ``Production``, or a team name). The *key* and *value* are the tag's *key* pair. Omitting the tag *value* is the same as using an empty string. Like tag *keys*, tag *values* are case-sensitive. You can specify a maximum of 256 characters for a tag value.

                  
                  

                  - *(string) --* 
              
            
          
        
          

          - **ServiceCollection** *(dict) --* 

            A collection of the names of Amazon Web Services services.

            
            

            - **ServiceNames** *(list) --* 

              An array of strings that each specifies the name of an Amazon Web Services service.

              
              

              - *(string) --* 
          
        
          

          - **AssociatedResourceArns** *(list) --* 

            The Amazon Resource Names (ARNs) of the Amazon Web Services resources that generated this insight.

            
            

            - *(string) --* 
        
      
    
      

      - **NextToken** *(string) --* 

        The pagination token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.

        
  
  **Exceptions**
  
  *   :py:class:`DevOpsGuru.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`DevOpsGuru.Client.exceptions.InternalServerException`

  
  *   :py:class:`DevOpsGuru.Client.exceptions.ThrottlingException`

  
  *   :py:class:`DevOpsGuru.Client.exceptions.ValidationException`

  