Open1
CloudWatchメトリクスとアラーム
CloudWatchアラーム設定
設定項目
CloudWatchアラームの設定には、以下3つの項目の設定が必要になる。
- 期間
- メトリクスや式を評価するための一定の時間範囲。
- Evaluation Periods (評価期間)
- アラームの状態を評価するための、ある期間から次の期間との間隔。
- データポイント
- 評価対象期間内のメトリクスの集計データ
期間が 1 分以上の場合、アラームは 1 分ごとに評価され、評価は [期間] と [評価期間] で定義されている時間枠に基づいて行われます。例えば、[期間] が 5 分 (300 秒) で、[評価期間] が 1 の場合、5 分終了時に、アラームは 1 分~5 分のデータに基づいて評価されます。続いて、6 分終了時に、2 分~6 分のデータに基づいてアラームが評価されます。
次の図では、メトリクスアラームのアラームしきい値が 3 単位に設定されています。
評価期間とデータポイントはどちらも 3 です。つまり、連続する最新の 3 つの期間内の既存のデータポイントすべてがしきい値を上回わると、アラームは ALARM 状態になります。この図では、第 3 期間から第 5 期間にかけてこれが発生します。第 6 期間で値がしきい値を下回り、評価対象の期間の 1 つが超過していないため、アラームの状態は OK に変化します。第 9 期間中のしきい値に再度超過がありますが、1 つの期間のみです。そのため、アラームの状態は OK のままです。

評価間隔は、評価期間の数に期間の長さを乗じて算出されます。たとえば、1 分の期間を持つ 5 個のデータポイントのうち 4 個を設定した場合、評価間隔は 5 分です。10 分の期間を持つ 3 個のデータポイントのうち 3 個を設定した場合、評価間隔は 30 分です。
設定例
パターン1
Lambdaで出力されたErrorログの検知
- アラーム種別:標準アラーム
- データ(メトリクスフィルター):Errors (AWSマネージド)
- データポイント
- 期間:1分間
- 閾値:<= 1
- 評価期間と評価範囲:1/1
- 1分間のデータポイント一つのうち、閾値を超えるものが一件あればアラーム発報
- 欠落データの処理:欠落データを見つかりませんとして処理
- 数式:FILL(m1,0)
- データの欠落部分を0として補完し「データ欠落時の延伸動作」を回避して「評価期間が過ぎるとすぐに OK 状態に戻る」アラームを設定することができる。
パターン2
Lambdaで出力されたログ中の特定文字列の検知
- アラーム種別:標準アラーム
- データ(メトリクスフィルター):検知対象の文字列
- データポイント
- 期間:1分間
- 閾値:<= 1
- 評価期間と評価範囲:1/1
- 欠落データの処理:欠落データを見つかりませんとして処理
- 数式:FILL(m1,0)
データ欠落時の評価の延長
概要
- データ欠落時の評価では、CloudWatch は [Evaluation Periods (評価期間)] に指定されている数よりも多くのデータポイントを取得しようとする。
- 結果的に評価期間が延びてアラームが0になるのが想定よりも遅くなることがある。
対応
- 数式にFILLを利用しデータ欠落箇所を0として埋めることで、余計に評価期間が延長されることを防ぐことができる。
参考