:doc:`KinesisAnalyticsV2 <../../kinesisanalyticsv2>` / Client / add_application_cloud_watch_logging_option

******************************************
add_application_cloud_watch_logging_option
******************************************



.. py:method:: KinesisAnalyticsV2.Client.add_application_cloud_watch_logging_option(**kwargs)

  

  Adds an Amazon CloudWatch log stream to monitor application configuration errors.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/kinesisanalyticsv2-2018-05-23/AddApplicationCloudWatchLoggingOption>`_  


  **Request Syntax**
  ::

    response = client.add_application_cloud_watch_logging_option(
        ApplicationName='string',
        CurrentApplicationVersionId=123,
        CloudWatchLoggingOption={
            'LogStreamARN': 'string'
        },
        ConditionalToken='string'
    )
    
  :type ApplicationName: string
  :param ApplicationName: **[REQUIRED]** 

    The Kinesis Data Analytics application name.

    

  
  :type CurrentApplicationVersionId: integer
  :param CurrentApplicationVersionId: 

    The version ID of the SQL-based Kinesis Data Analytics application. You must provide the ``CurrentApplicationVersionId`` or the ``ConditionalToken``.You can retrieve the application version ID using  DescribeApplication. For better concurrency support, use the ``ConditionalToken`` parameter instead of ``CurrentApplicationVersionId``.

    

  
  :type CloudWatchLoggingOption: dict
  :param CloudWatchLoggingOption: **[REQUIRED]** 

    Provides the Amazon CloudWatch log stream Amazon Resource Name (ARN).

    

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

      The ARN of the CloudWatch log to receive application messages.

      

    
  
  :type ConditionalToken: string
  :param ConditionalToken: 

    A value you use to implement strong concurrency for application updates. You must provide the ``CurrentApplicationVersionId`` or the ``ConditionalToken``. You get the application's current ``ConditionalToken`` using  DescribeApplication. For better concurrency support, use the ``ConditionalToken`` parameter instead of ``CurrentApplicationVersionId``.

    

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

    
    ::

      {
          'ApplicationARN': 'string',
          'ApplicationVersionId': 123,
          'CloudWatchLoggingOptionDescriptions': [
              {
                  'CloudWatchLoggingOptionId': 'string',
                  'LogStreamARN': 'string',
                  'RoleARN': 'string'
              },
          ],
          'OperationId': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **ApplicationARN** *(string) --* 

        The application's ARN.

        
      

      - **ApplicationVersionId** *(integer) --* 

        The new version ID of the SQL-based Kinesis Data Analytics application. Kinesis Data Analytics updates the ``ApplicationVersionId`` each time you change the CloudWatch logging options.

        
      

      - **CloudWatchLoggingOptionDescriptions** *(list) --* 

        The descriptions of the current CloudWatch logging options for the SQL-based Kinesis Data Analytics application.

        
        

        - *(dict) --* 

          Describes the Amazon CloudWatch logging option.

          
          

          - **CloudWatchLoggingOptionId** *(string) --* 

            The ID of the CloudWatch logging option description.

            
          

          - **LogStreamARN** *(string) --* 

            The Amazon Resource Name (ARN) of the CloudWatch log to receive application messages.

            
          

          - **RoleARN** *(string) --* 

            The IAM ARN of the role to use to send application messages.

             

            .. note::

              

              Provided for backward compatibility. Applications created with the current API version have an application-level service execution role rather than a resource-level role.

              

            
      
    
      

      - **OperationId** *(string) --* 

        The operation ID that can be used to track the request.

        
  
  **Exceptions**
  
  *   :py:class:`KinesisAnalyticsV2.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`KinesisAnalyticsV2.Client.exceptions.ResourceInUseException`

  
  *   :py:class:`KinesisAnalyticsV2.Client.exceptions.InvalidArgumentException`

  
  *   :py:class:`KinesisAnalyticsV2.Client.exceptions.ConcurrentModificationException`

  
  *   :py:class:`KinesisAnalyticsV2.Client.exceptions.InvalidRequestException`

  
  *   :py:class:`KinesisAnalyticsV2.Client.exceptions.InvalidApplicationConfigurationException`

  