Is there a way to restrict CloudWatch alarms to only trigger during specified time periods?

0

I have a Development account which only needs monitoring during business hours. Currently, notifications are being routed to OpsGenie via an SNS topic. There are options to silence the alerts at the OpsGenie level, but they are still generated, which skews alert metrics. Is there any way to prevent alerts from being sent to the topic outside of 9-5 business hours?

Thanks!

1 Answer
1

Hello, there is no built-in silence feature in CloudWatch alarms. It is however possible to prevent the alarm from sending notifications, using one of the following approaches:

  1. Disable the alarm actions during off-business hours using a lambda triggered by an eventbridge cron rule. Your alarm will still change state during off-business hours, but the notification will not be posted. You can call the lambda at 5pm to call https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_DisableAlarmActions.html, and trigger the lambda at 9am to call https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_EnableAlarmActions.html

  2. Use metric math to silence the metric during off-business hours, for example create a metric math expression that would be equal to IF(HOUR(m1) > 9 AND HOUR(m1) < 17, m1) and alarm on that metric math expression. With that option, your alarm will never change state during off-business hours.

profile pictureAWS
Jsc
answered 2 years ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions