AWSで、SNSトピックを送信先として監視を行っていて、SNSが配信に失敗していないかどうかを監視するケース。
sns-metric.tf
###############################
# SNS metric alarm resource
###############################
resource "aws_cloudwatch_metric_alarm" "metric_alarm_001" {
alarm_name = "cw-metric-alarm"
comparison_operator = "GreaterThanOrEqualToThreshold"
evaluation_periods = "1"
metric_name = "NumberOfNotificationFailed"
namespace = "SNS"
period = "60"
statistic = "Average"
threshold = "1"
alarm_description = "SNS Notification Monitor"
datapoints_to_alarm = "1"
treat_missing_data = "notBreaching"
dimentions = {
TopicName = "sample-topic"
}
}
treat_missing_dataの値は監視の条件により全く異なってくるので注意。ここでは「アラームが発生したら失敗」と見なすので"notBreaching"。
しかしこの監視で人為的にアラームを発生させるのはほぼ無理だから、テストはできないと思われ。