アラームアクション
OK、ALARM、および INSUFFICIENT_DATA の状態の間で状態が変わったときに、アラームが実行するアクションを指定できます。
3 つの状態それぞれに移行するほとんどのアクションを設定できます。Auto Scaling アクションを除き、アクションは状態遷移時にのみ発生し、その状態が数時間または数日間続く場合は再実行されません。
アラームアクションとして以下がサポートされています。
-
[Amazon Simple Notification Service トピックを使用] して、1 つ以上のサブスクライバーに通知します。サブスクライバーはアプリケーションでも個人でもかまいません。
-
[Lambda 関数を呼び出す]。これは、アラーム状態の変化に対するカスタムアクションを自動化する最も簡単な方法です。
-
EC2 メトリクスに基づくアラームは、EC2 インスタンスの停止、終了、再起動、復旧などの [EC2 アクションを実行] することもできます。
-
アラームは、[Auto Scaling グループをスケールする] アクションを実行することもできます。
-
アラームは、[Systems Manager Ops Center で OpsItems を作成するか、AWS Systems Manager Incident Manager でインシデントを作成する] ことができます。これらのアクションは、アラームが ALARM 状態になった場合にのみ実行されます。
-
アラームは、ALARM 状態になると調査を開始できます。
アラームは、状態が変更されたときに Amazon EventBridge にイベントを出力し、これらの状態の変化に対して他のアクションをトリガーするように Amazon EventBridge を設定できます。
アラームアクションと通知
次の表は、アラームに対して実行されるアクションと、複数の時系列 (またはコントリビューター) アラームの動作を示しています。
| アクションの種類 | メトリクスインサイト、複数の時系列、アラームのサポート | PromQL アラームのサポート | 詳細情報 |
|---|---|---|---|
| SNS 通知 | コントリビューターレベル | コントリビューターレベル | Amazon SNS イベントの送信先 |
| EC2 アクション (停止、終了、再起動、復旧) | サポートされません | サポートされません | EC2 インスタンスの停止、終了、再起動、または復旧 |
| Auto Scaling アクション | サポートされません | サポートされません | Amazon EC2 Auto Scaling のステップおよび簡易スケーリングポリシー |
| Systems Manager OpsItem の作成 | アラームレベル | サポートされていません | OpsItems を作成するように CloudWatch アラームを設定する |
| Systems Manager Incident Manager インシデント | アラームレベル | サポートされていません | CloudWatch アラームでインシデントを自動的に作成する |
| Lambda 関数の呼び出し | コントリビューターレベル | コントリビューターレベル | アラームからの Lambda 関数の呼び出し |
| CloudWatch 調査 | アラームレベル | サポートされていません | アラームから CloudWatch 調査を開始する |
アラーム通知の内容は、アラームタイプによって異なります:
-
単一メトリクスアラームには、状態変更の原因となった特定のデータポイントを示す、状態理由と詳細な状態理由データの両方が含まれます。
-
マルチ時系列メトリクスインサイトアラームは、詳細な状態理由データブロックなしで、各コントリビューターの簡略化された状態理由を提供します。
-
PromQL アラームには、通知に状態理由または状態理由データは含まれません。
例通知コンテンツの例
単一メトリクスアラーム通知には、詳細データが含まれます。
{ "stateReason": "Threshold Crossed: 3 out of the last 3 datapoints [32.6 (03/07/25 08:29:00), 33.8 (03/07/25 08:24:00), 41.0 (03/07/25 08:19:00)] were greater than the threshold (31.0)...", "stateReasonData": { "version": "1.0", "queryDate": "2025-07-03T08:34:06.300+0000", "startDate": "2025-07-03T08:19:00.000+0000", "statistic": "Average", "period": 300, "recentDatapoints": [41, 33.8, 32.6], "threshold": 31, "evaluatedDatapoints": [ { "timestamp": "2025-07-03T08:29:00.000+0000", "sampleCount": 5, "value": 32.6 } // Additional datapoints... ] } }
コントリビューター向けの複数の時系列の Metrics Insights アラーム SNS 通知の例:
{ "AlarmName": "DynamoDBInsightsAlarm", "NewStateValue": "ALARM", "NewStateReason": "Threshold Crossed: 1 datapoint was less than the threshold (1.0). The most recent datapoint which crossed the threshold: [0.0 (01/12/25 13:34:00)].", "StateChangeTime": "2025-12-01T13:42:04.919+0000", "OldStateValue": "OK", "AlarmContributorId": "6d442278dba546f6", "AlarmContributorAttributes": { "TableName": "example-dynamodb-table-name" } // Additional information... }
Contributor の PromQL アラーム SNS 通知の例:
{ "AlarmName": "HighCPUUsageAlarm", "NewStateValue": "ALARM", "StateChangeTime": "2025-12-01T13:42:04.919+0000", "OldStateValue": "OK", "AlarmContributorId": "1d502278dcd546a1", "AlarmContributorAttributes": { "team": "example-team-name" } // Additional information... }
アラームアクションのミュート
アラームミュートルールを使用すると、メンテナンス期間や運用イベントなど、事前定義されたタイムウィンドウ内にアラームアクションを自動的にミュートできます。CloudWatch はアラーム状態のモニタリングを継続し、不要な通知を防止します。詳細については、「アラームミュートルール」を参照してください。
ミュートルールとアラームアクション無効化
アラームミュートルールは、予定のタイムウィンドウ中に一時的にアクションをミュートし、タイムウィンドウが終了すると自動的にミュートを解除します。対照的に、DisableAlarmActions API は、手動で EnableAlarmActions を呼び出すまでアラームアクションを完全に無効にします。EnableAlarmActions API は、アクティブなミュートルールによってミュートされたアラームのミュートは解除しません。
注記
アラームをミュートにすると、CloudWatch は、アラームの作成、更新、削除、状態変更のアラームイベントを Amazon EventBridge に送信しなくなります。