CloudWatch アラーム、起動直後の誤報にサヨナラできるようになったよ!
やっほー、しぃちゃんだよ!今日は AWS からうれしいニュースが届いたの。アラーム運用でちょっとモヤモヤしてた人、必見だよ!
AWS What's Newなにが発表されたの?
AWS の News(What's New)によると、Amazon CloudWatch のメトリクスアラームとログアラームに、新しく「ウォームアップ期間」を設定できるようになったの。アラームを作成してから一定時間、評価そのものを遅らせられる機能だよ。
今までどうだったの?
今までは、メトリクスがまだ報告され始めていない段階でアラームを作成すると、CloudWatch はすぐに評価を始めちゃってたの。新しく立ち上げたマイクロサービスなど、メトリクスの発行までに時間がかかるリソースだと、起動途中のデータ欠落だけでアラームが状態遷移して、アクションが実行されちゃうことがあったんだって。CI/CD パイプラインでサービスとアラームをまとめてデプロイするようなチームだと、これが原因で起動直後にオンコール担当者へ不要な通知が飛んでたの。
これで何が変わるの?
これからは、サービスとアラームを同時にデプロイしても安心だよ。サービスがまだ起動中でメトリクスを出していない間は評価をスキップしてくれるから、起動直後にオンコールが鳴らされる心配が減るの。
深く潜ってみよう
設定は WarmUpConfiguration パラメータで行うよ。アラームの作成時・更新時に指定できて、ウォームアップ期間は 1 分から 2,880 分(2 日間)まで設定できるの。
待ち方は 2 パターンから選べるよ。
- 固定時間待つ: 設定した時間が経過するまで評価を始めない
- 自動終了(デフォルト): 評価ウィンドウを埋めるのに十分なデータが集まったら、指定時間より前でもウォームアップを自動的に終了して評価を始める
追加料金はかからなくて、通常の CloudWatch アラーム料金の範囲で使えるよ。CloudWatch が使えるすべての AWS リージョンで利用できるの。
まとめ
- Amazon CloudWatch のアラームに「ウォームアップ期間」機能が追加された
WarmUpConfigurationで 1〜2,880 分の間で設定可能- 起動直後のデータ欠落による誤報を防げる
- 追加料金なし、CloudWatch が使える全リージョンで利用可能
CI/CD でサービスとアラームを同時にデプロイしている人や、起動直後の誤報に悩んでたオンコール担当の人に刺さる機能だよ!