Amazon Lookout for Metrics

2022/06/14 - Amazon Lookout for Metrics - 1 new2 updated api methods

Changes  Adding filters to Alert and adding new UpdateAlert API.

UpdateAlert (new) Link ¶

Make changes to an existing alert.

See also: AWS API Documentation

Request Syntax

client.update_alert(
    AlertArn='string',
    AlertDescription='string',
    AlertSensitivityThreshold=123,
    Action={
        'SNSConfiguration': {
            'RoleArn': 'string',
            'SnsTopicArn': 'string',
            'SnsFormat': 'LONG_TEXT'|'SHORT_TEXT'|'JSON'
        },
        'LambdaConfiguration': {
            'RoleArn': 'string',
            'LambdaArn': 'string'
        }
    },
    AlertFilters={
        'MetricList': [
            'string',
        ],
        'DimensionFilterList': [
            {
                'DimensionName': 'string',
                'DimensionValueList': [
                    'string',
                ]
            },
        ]
    }
)
type AlertArn:

string

param AlertArn:

[REQUIRED]

The ARN of the alert to update.

type AlertDescription:

string

param AlertDescription:

A description of the alert.

type AlertSensitivityThreshold:

integer

param AlertSensitivityThreshold:

An integer from 0 to 100 specifying the alert sensitivity threshold.

type Action:

dict

param Action:

Action that will be triggered when there is an alert.

  • SNSConfiguration (dict) --

    A configuration for an Amazon SNS channel.

    • RoleArn (string) -- [REQUIRED]

      The ARN of the IAM role that has access to the target SNS topic.

    • SnsTopicArn (string) -- [REQUIRED]

      The ARN of the target SNS topic.

    • SnsFormat (string) --

      The format of the SNS topic.

      • JSON – Send JSON alerts with an anomaly ID and a link to the anomaly detail page. This is the default.

      • LONG_TEXT – Send human-readable alerts with information about the impacted timeseries and a link to the anomaly detail page. We recommend this for email.

      • SHORT_TEXT – Send human-readable alerts with a link to the anomaly detail page. We recommend this for SMS.

  • LambdaConfiguration (dict) --

    A configuration for an AWS Lambda channel.

    • RoleArn (string) -- [REQUIRED]

      The ARN of an IAM role that has permission to invoke the Lambda function.

    • LambdaArn (string) -- [REQUIRED]

      The ARN of the Lambda function.

type AlertFilters:

dict

param AlertFilters:

The configuration of the alert filters, containing MetricList and DimensionFilterList.

  • MetricList (list) --

    The list of measures that you want to get alerts for.

    • (string) --

  • DimensionFilterList (list) --

    The list of DimensionFilter objects that are used for dimension-based filtering.

    • (dict) --

      The dimension filter, containing DimensionName and DimensionValueList.

      • DimensionName (string) --

        The name of the dimension to filter on.

      • DimensionValueList (list) --

        The list of values for the dimension specified in DimensionName that you want to filter on.

        • (string) --

rtype:

dict

returns:

Response Syntax

{
    'AlertArn': 'string'
}

Response Structure

  • (dict) --

    • AlertArn (string) --

      The ARN of the updated alert.

CreateAlert (updated) Link ¶
Changes (request)
{'AlertFilters': {'DimensionFilterList': [{'DimensionName': 'string',
                                           'DimensionValueList': ['string']}],
                  'MetricList': ['string']}}

Creates an alert for an anomaly detector.

See also: AWS API Documentation

Request Syntax

client.create_alert(
    AlertName='string',
    AlertSensitivityThreshold=123,
    AlertDescription='string',
    AnomalyDetectorArn='string',
    Action={
        'SNSConfiguration': {
            'RoleArn': 'string',
            'SnsTopicArn': 'string',
            'SnsFormat': 'LONG_TEXT'|'SHORT_TEXT'|'JSON'
        },
        'LambdaConfiguration': {
            'RoleArn': 'string',
            'LambdaArn': 'string'
        }
    },
    Tags={
        'string': 'string'
    },
    AlertFilters={
        'MetricList': [
            'string',
        ],
        'DimensionFilterList': [
            {
                'DimensionName': 'string',
                'DimensionValueList': [
                    'string',
                ]
            },
        ]
    }
)
type AlertName:

string

param AlertName:

[REQUIRED]

The name of the alert.

type AlertSensitivityThreshold:

integer

param AlertSensitivityThreshold:

An integer from 0 to 100 specifying the alert sensitivity threshold.

type AlertDescription:

string

param AlertDescription:

A description of the alert.

type AnomalyDetectorArn:

string

param AnomalyDetectorArn:

[REQUIRED]

The ARN of the detector to which the alert is attached.

type Action:

dict

param Action:

[REQUIRED]

Action that will be triggered when there is an alert.

  • SNSConfiguration (dict) --

    A configuration for an Amazon SNS channel.

    • RoleArn (string) -- [REQUIRED]

      The ARN of the IAM role that has access to the target SNS topic.

    • SnsTopicArn (string) -- [REQUIRED]

      The ARN of the target SNS topic.

    • SnsFormat (string) --

      The format of the SNS topic.

      • JSON – Send JSON alerts with an anomaly ID and a link to the anomaly detail page. This is the default.

      • LONG_TEXT – Send human-readable alerts with information about the impacted timeseries and a link to the anomaly detail page. We recommend this for email.

      • SHORT_TEXT – Send human-readable alerts with a link to the anomaly detail page. We recommend this for SMS.

  • LambdaConfiguration (dict) --

    A configuration for an AWS Lambda channel.

    • RoleArn (string) -- [REQUIRED]

      The ARN of an IAM role that has permission to invoke the Lambda function.

    • LambdaArn (string) -- [REQUIRED]

      The ARN of the Lambda function.

type Tags:

dict

param Tags:

A list of tags to apply to the alert.

  • (string) --

    • (string) --

type AlertFilters:

dict

param AlertFilters:

The configuration of the alert filters, containing MetricList and DimensionFilterList.

  • MetricList (list) --

    The list of measures that you want to get alerts for.

    • (string) --

  • DimensionFilterList (list) --

    The list of DimensionFilter objects that are used for dimension-based filtering.

    • (dict) --

      The dimension filter, containing DimensionName and DimensionValueList.

      • DimensionName (string) --

        The name of the dimension to filter on.

      • DimensionValueList (list) --

        The list of values for the dimension specified in DimensionName that you want to filter on.

        • (string) --

rtype:

dict

returns:

Response Syntax

{
    'AlertArn': 'string'
}

Response Structure

  • (dict) --

    • AlertArn (string) --

      The ARN of the alert.

DescribeAlert (updated) Link ¶
Changes (response)
{'Alert': {'AlertFilters': {'DimensionFilterList': [{'DimensionName': 'string',
                                                     'DimensionValueList': ['string']}],
                            'MetricList': ['string']}}}

Describes an alert.

Amazon Lookout for Metrics API actions are eventually consistent. If you do a read operation on a resource immediately after creating or modifying it, use retries to allow time for the write operation to complete.

See also: AWS API Documentation

Request Syntax

client.describe_alert(
    AlertArn='string'
)
type AlertArn:

string

param AlertArn:

[REQUIRED]

The ARN of the alert to describe.

rtype:

dict

returns:

Response Syntax

{
    'Alert': {
        'Action': {
            'SNSConfiguration': {
                'RoleArn': 'string',
                'SnsTopicArn': 'string',
                'SnsFormat': 'LONG_TEXT'|'SHORT_TEXT'|'JSON'
            },
            'LambdaConfiguration': {
                'RoleArn': 'string',
                'LambdaArn': 'string'
            }
        },
        'AlertDescription': 'string',
        'AlertArn': 'string',
        'AnomalyDetectorArn': 'string',
        'AlertName': 'string',
        'AlertSensitivityThreshold': 123,
        'AlertType': 'SNS'|'LAMBDA',
        'AlertStatus': 'ACTIVE'|'INACTIVE',
        'LastModificationTime': datetime(2015, 1, 1),
        'CreationTime': datetime(2015, 1, 1),
        'AlertFilters': {
            'MetricList': [
                'string',
            ],
            'DimensionFilterList': [
                {
                    'DimensionName': 'string',
                    'DimensionValueList': [
                        'string',
                    ]
                },
            ]
        }
    }
}

Response Structure

  • (dict) --

    • Alert (dict) --

      Contains information about an alert.

      • Action (dict) --

        Action that will be triggered when there is an alert.

        • SNSConfiguration (dict) --

          A configuration for an Amazon SNS channel.

          • RoleArn (string) --

            The ARN of the IAM role that has access to the target SNS topic.

          • SnsTopicArn (string) --

            The ARN of the target SNS topic.

          • SnsFormat (string) --

            The format of the SNS topic.

            • JSON – Send JSON alerts with an anomaly ID and a link to the anomaly detail page. This is the default.

            • LONG_TEXT – Send human-readable alerts with information about the impacted timeseries and a link to the anomaly detail page. We recommend this for email.

            • SHORT_TEXT – Send human-readable alerts with a link to the anomaly detail page. We recommend this for SMS.

        • LambdaConfiguration (dict) --

          A configuration for an AWS Lambda channel.

          • RoleArn (string) --

            The ARN of an IAM role that has permission to invoke the Lambda function.

          • LambdaArn (string) --

            The ARN of the Lambda function.

      • AlertDescription (string) --

        A description of the alert.

      • AlertArn (string) --

        The ARN of the alert.

      • AnomalyDetectorArn (string) --

        The ARN of the detector to which the alert is attached.

      • AlertName (string) --

        The name of the alert.

      • AlertSensitivityThreshold (integer) --

        The minimum severity for an anomaly to trigger the alert.

      • AlertType (string) --

        The type of the alert.

      • AlertStatus (string) --

        The status of the alert.

      • LastModificationTime (datetime) --

        The time at which the alert was last modified.

      • CreationTime (datetime) --

        The time at which the alert was created.

      • AlertFilters (dict) --

        The configuration of the alert filters, containing MetricList and DimensionFilter.

        • MetricList (list) --

          The list of measures that you want to get alerts for.

          • (string) --

        • DimensionFilterList (list) --

          The list of DimensionFilter objects that are used for dimension-based filtering.

          • (dict) --

            The dimension filter, containing DimensionName and DimensionValueList.

            • DimensionName (string) --

              The name of the dimension to filter on.

            • DimensionValueList (list) --

              The list of values for the dimension specified in DimensionName that you want to filter on.

              • (string) --