Skip to content

add_application_cloud_watch_logging_option async

add_application_cloud_watch_logging_option(
    application_name: ApplicationName,
    cloud_watch_logging_option: CloudWatchLoggingOption,
    *,
    config_overrides: Optional[AsyncKinesisAnalyticsV2ClientConfig] = None,
    current_application_version_id: Optional[ApplicationVersionId] = None,
    conditional_token: Optional[ConditionalToken] = None,
) -> AddApplicationCloudWatchLoggingOptionResponse

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

Parameters:

  • application_name (ApplicationName) –

    The Kinesis Data Analytics application name.

  • current_application_version_id (Optional[ApplicationVersionId], default: None ) –

    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.

  • cloud_watch_logging_option (CloudWatchLoggingOption) –

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

  • conditional_token (Optional[ConditionalToken], default: None ) –

    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.

Raises:

Source code in docs_src/capo_kinesis_analytics_v2/_services/async_kinesis_analytics_v2.py
async def add_application_cloud_watch_logging_option(
    self,
    application_name: "capo_kinesis_analytics_v2.types.application_name.ApplicationName",
    cloud_watch_logging_option: "capo_kinesis_analytics_v2.types.cloud_watch_logging_option.CloudWatchLoggingOption",
    *,
    config_overrides: Optional[AsyncKinesisAnalyticsV2ClientConfig] = None,
    current_application_version_id: Optional[
        "capo_kinesis_analytics_v2.types.application_version_id.ApplicationVersionId"
    ] = None,
    conditional_token: Optional[
        "capo_kinesis_analytics_v2.types.conditional_token.ConditionalToken"
    ] = None,
) -> "capo_kinesis_analytics_v2.types.add_application_cloud_watch_logging_option_response.AddApplicationCloudWatchLoggingOptionResponse":
    """<p>Adds an Amazon CloudWatch log stream to monitor application configuration errors.</p>

    Args:
        application_name: <p>The Kinesis Data Analytics application name.</p>
        current_application_version_id: <p>The version ID of the SQL-based Kinesis Data Analytics application. You must provide the <code>CurrentApplicationVersionId</code> or the <code>ConditionalToken</code>.You can retrieve the application version ID using <a>DescribeApplication</a>. For better concurrency support, use the <code>ConditionalToken</code> parameter instead of <code>CurrentApplicationVersionId</code>.</p>
        cloud_watch_logging_option: <p>Provides the Amazon CloudWatch log stream Amazon Resource Name (ARN). </p>
        conditional_token: <p>A value you use to implement strong concurrency for application updates. You must provide the <code>CurrentApplicationVersionId</code> or the <code>ConditionalToken</code>. You get the application's current <code>ConditionalToken</code> using <a>DescribeApplication</a>. For better concurrency support, use the <code>ConditionalToken</code> parameter instead of <code>CurrentApplicationVersionId</code>.</p>

    Raises:
        capo_kinesis_analytics_v2.errors.concurrent_modification_exception.ConcurrentModificationException: <p>Exception thrown as a result of concurrent modifications to an application. This error can be the result of attempting to modify an application without using the current application ID.</p>
        capo_kinesis_analytics_v2.errors.invalid_application_configuration_exception.InvalidApplicationConfigurationException: <p>The user-provided application configuration is not valid.</p>
        capo_kinesis_analytics_v2.errors.invalid_argument_exception.InvalidArgumentException: <p>The specified input parameter value is not valid.</p>
        capo_kinesis_analytics_v2.errors.invalid_request_exception.InvalidRequestException: <p>The request JSON is not valid for the operation.</p>
        capo_kinesis_analytics_v2.errors.resource_in_use_exception.ResourceInUseException: <p>The application is not available for this operation.</p>
        capo_kinesis_analytics_v2.errors.resource_not_found_exception.ResourceNotFoundException: <p>Specified application can't be found.</p>
        capo_kinesis_analytics_v2.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_kinesis_analytics_v2.types.add_application_cloud_watch_logging_option_request.AddApplicationCloudWatchLoggingOptionRequest]",
    ) -> AsyncOperationResponse[
        "capo_kinesis_analytics_v2.types.add_application_cloud_watch_logging_option_response.AddApplicationCloudWatchLoggingOptionResponse"
    ]:
        import capo_kinesis_analytics_v2._operations.kinesis_analytics_20180523.add_application_cloud_watch_logging_option

        (
            output,
            http_response,
        ) = await capo_kinesis_analytics_v2._operations.kinesis_analytics_20180523.add_application_cloud_watch_logging_option.async_add_application_cloud_watch_logging_option(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("AddApplicationCloudWatchLoggingOption")
    )
    input_: capo_kinesis_analytics_v2.types.add_application_cloud_watch_logging_option_request.AddApplicationCloudWatchLoggingOptionRequest = {
        "application_name": application_name,
        "cloud_watch_logging_option": cloud_watch_logging_option,
    }
    if current_application_version_id is not None:
        input_["current_application_version_id"] = current_application_version_id
    if conditional_token is not None:
        input_["conditional_token"] = conditional_token

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output