Cloudwatch alarms notifies if capacity limits are approaching or if throttling occurs. Make Sure that DatapointsToAlarm and Threshold is set.
1Resources:
2 NonCompliantReadCapacityAlarm:
3 Type: AWS::CloudWatch::Alarm
4 Properties:
5 # Noncompliant: `DatapointsToAlarm` is missing.
6 AlarmName: !Sub '${TableName}-NonCompliantReadCapacity'
7 MetricName: ConsumedReadCapacityUnits
8 Namespace: AWS/DynamoDB
9 Statistic: Sum
10 Period: 60
11 EvaluationPeriods: 1
12 Threshold: 95
13 AlarmDescription: "Non-compliant alarm for read capacity monitoring"
14 ComparisonOperator: GreaterThanThreshold
15 Dimensions:
16 - Name: TableName
17 Value: !Ref TableName
18 AlarmActions:
19 - !Ref NonCompliantMonitoringTopic
20 TreatMissingData: ignore1Resources:
2 CompliantReadCapacityAlarm:
3 Type: AWS::CloudWatch::Alarm
4 Properties:
5 AlarmName: !Sub '${TableName}-CompliantReadCapacity'
6 MetricName: ConsumedReadCapacityUnits
7 Namespace: AWS/DynamoDB
8 Statistic: Sum
9 Period: 300
10 EvaluationPeriods: 2
11 # Compliant: `DatapointsToAlarm` and `Threshold` are set.
12 DatapointsToAlarm: 2
13 Threshold: 80
14 AlarmDescription: "Compliant alarm for read capacity monitoring"
15 ComparisonOperator: GreaterThanThreshold
16 Dimensions:
17 - Name: TableName
18 Value: !Ref TableName
19 AlarmActions:
20 - !Ref CompliantMonitoringTopic
21 InsufficientDataActions:
22 - !Ref CompliantMonitoringTopic
23 OKActions:
24 - !Ref CompliantMonitoringTopic
25 TreatMissingData: breaching