
たとえば計画メンテナンス中などに "想定している" アラートが鳴ってしまうことを許容するという選択肢もあるけど,個人的には抑制できるなら抑制するのが良いと思っているんだけどな〜😀という話をしていたら,実は Amazon CloudWatch アラームを一時的に無効化できることが知られていなかったという背景があったらしく,せっかくならテックブログを書いておこうと思った \( 'ω')/
マネジメントコンソール
マネジメントコンソールで Amazon CloudWatch アラームを無効化する場合は アクション > アラームアクション > 無効化 と選択すれば OK👌

Terraform
Terraform の aws_cloudwatch_metric_alarm で Amazon CloudWatch アラームを無効化する場合は actions_enabled を false に設定すれば OK👌(デフォルトは true)以下の例は ALB (Application Load Balancer) の HTTPCode_ELB_5XX_Count メトリクスに Amazon CloudWatch アラームを設定している🚨
resource "aws_cloudwatch_metric_alarm" "alb_5xx_errors" { alarm_name = "alb-5xx-errors" alarm_description = "alb-5xx-errors" namespace = "AWS/ApplicationELB" metric_name = "HTTPCode_ELB_5XX_Count" statistic = "Sum" threshold = "5" comparison_operator = "GreaterThanThreshold" period = "300" evaluation_periods = "1" treat_missing_data = "notBreaching" alarm_actions = ["arn:aws:sns:ap-northeast-1:000000000000:xxxxx"] actions_enabled = "false" dimensions = { LoadBalancer = "app/sandbox/xxxxxxxxxxxxxxxx" } }