根据警报更改执行操作
CloudWatch 可以在发生两种类型的警报更改时通知用户:警报状态更改和警报配置更新。
当告警在进行评估时,其状态可能会变为其他状态,例如“ALARM”或“OK”。对于监控多个时间序列的 Metrics Insights 告警,每个时间序列(影响因素)只能处于“ALARM”或“OK”状态,绝不能处于 INSUFFICIENT_DATA 状态。这是因为只有在数据存在的情况下,时间序列才会存在。
告警操作和通知
下表显示了在 Metrics Insights 告警的告警级别和影响因素级别分别执行的操作:
操作类型 | 告警级别 | 影响因素级别 | 更多信息 |
---|---|---|---|
SNS 通知 | 支持 | 是 | Amazon SNS event destinations |
EC2 操作(停止、终止、重启、恢复) | 否 | 是 | 创建告警以停止、终止、重启或恢复 EC2 实例 |
Auto Scaling 操作 | 是 | 否 | Amazon EC2 Auto Scaling 的阶梯式扩展策略与简单扩展策略 |
Systems Manager OpsItem 创建 | 支持 | 是 | Configure CloudWatch alarms to create OpsItems |
Systems Manager Incident Manager 事件 | 是 | 否 | Creating incidents automatically with CloudWatch alarms |
Lambda 函数调用 | 支持 | 是 | 从警报中调用 Lambda 函数 |
CloudWatch 调查功能调查 | 是 | 否 | 从警报启动 CloudWatch 调查 |
单指标告警和多时间序列告警的告警通知内容有所不同:
-
单指标告警通知内容同时包含状态原因和详细的状态原因数据,会显示导致状态变化的具体数据点。
-
多时间序列告警通知会为每个影响因素提供简化的状态原因数据,不会包含详细状态原因数据块。
例 通知内容示例
单指标告警通知包含详细的数据:
{ "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... ] } }
多时间序列告警通知包含简化的原因说明:
{ "stateReason": "Threshold Crossed: 3 datapoints were greater than the threshold (0.0). The most recent datapoints which crossed the threshold: [32.6 (03/07/25 08:29:00)]." }
此外,每当警报状态更改以及创建、删除或更新警报时,CloudWatch 都会将事件发送到 Amazon EventBridge。您可以编写 EventBridge 规则,从而在 EventBridge 收到这些事件时执行操作或通知您。