基于CloudWatch Insights查询配置告警的方法咨询
基于CloudWatch Insights查询配置登录失败告警的方法
可以基于你的CloudWatch Insights查询配置告警,但你当前的查询仅返回具体日志条目并排序,没有统计聚合结果——CloudWatch告警依赖数值型指标(如计数、平均值),所以得先调整查询或通过指标过滤器生成可用指标,具体步骤如下:
方法一:用日志指标过滤器快速创建(适合简单匹配场景)
- 打开CloudWatch控制台,进入「日志」→「日志组」,选中你要监控的目标日志组
- 切换到「指标过滤器」标签页,点击「创建指标过滤器」
- 在「过滤器模式」里输入匹配规则,比如直接写
"User login failed"(和你Insights里的filter @message LIKE "User login failed"效果一致) - 配置指标详情:
- 命名空间:自定义一个(比如
LoginMonitoring) - 指标名称:比如
FailedLoginCount - 指标值:填
1(每条匹配到的日志都计1次) - 单位:选择
Count
- 命名空间:自定义一个(比如
- 保存过滤器,此时CloudWatch会自动生成对应的自定义指标
方法二:基于Insights聚合查询生成指标(适合复杂解析场景)
如果你的日志需要先解析(比如你用了parse语句提取字段),可以修改Insights查询添加聚合逻辑,再导出为指标:
- 修改你的查询,最后加上聚合统计语句,比如:
fields @timestamp, @message | filter @message LIKE "User login failed" | parse @message "* * [*] *" as date, level, object, message | stats count() as failed_logins by bin(5m) -- 按5分钟统计失败登录次数 - 在CloudWatch Insights界面运行修改后的查询,点击右上角「导出」→「导出到指标」
- 配置指标的命名空间、名称,保存后就能在CloudWatch指标列表里找到这个指标
创建告警
不管用哪种方法生成指标,后续创建告警的步骤一致:
- 进入CloudWatch控制台「告警」→「所有告警」,点击「创建告警」
- 选择你刚才生成的自定义指标
- 配置告警条件:比如设置「当5分钟内的统计值大于10」(按需调整阈值和周期)
- 配置通知:选择已有的SNS主题(没有的话直接创建,绑定接收告警的邮箱/工具)
- 完成告警创建
你之前操作失败的原因:Metrics编辑器无法直接使用返回明细日志的Insights查询,必须是带聚合统计的查询,且需要通过「导出到指标」或「指标过滤器」的方式生成可用于告警的数值指标,不能直接在Metrics编辑器中添加原始查询。
内容的提问来源于stack exchange,提问作者Alex Race
相关产品推荐
相关产品推荐

