CloudWatch Alarm Actions library

This library contains a set of classes which can be used as CloudWatch Alarm actions.

The currently implemented actions are: EC2 Actions, SNS Actions, SSM OpsCenter Actions, Autoscaling Actions and Application Autoscaling Actions

EC2 Action Example

# Alarm must be configured with an EC2 per-instance metric
# alarm: cloudwatch.Alarm

# Attach a reboot when alarm triggers
alarm.add_alarm_action(
    actions.Ec2Action(actions.Ec2InstanceAction.REBOOT))

SSM OpsCenter Action Example

# alarm: cloudwatch.Alarm

# Create an OpsItem with specific severity and category when alarm triggers
alarm.add_alarm_action(
    actions.SsmAction(actions.OpsItemSeverity.CRITICAL, actions.OpsItemCategory.PERFORMANCE))

SSM Incident Manager Action Example

# alarm: cloudwatch.Alarm

# Create an Incident Manager incident based on a specific response plan
alarm.add_alarm_action(
    actions.SsmIncidentAction("ResponsePlanName"))

Lambda Action Example

import aws_cdk.aws_lambda as lambda_
# alarm: cloudwatch.Alarm
# fn: lambda.Function
# alias: lambda.Alias
# version: lambda.Version


# Attach a Lambda Function when alarm triggers
alarm.add_alarm_action(
    actions.LambdaAction(fn))

# Attach a Lambda Function Alias when alarm triggers
alarm.add_alarm_action(
    actions.LambdaAction(alias))

# Attach a Lambda Function version when alarm triggers
alarm.add_alarm_action(
    actions.LambdaAction(version))

See aws-cdk-lib/aws-cloudwatch for more information.