Prometheus 告警调优器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/prometheus-alert-tuner
技能介绍
告警疲劳是怎么产生的
长期运行的 Prometheus 环境里,告警规则往往在上线初期设定一个拍脑袋的阈值,之后很少有人回头检视。结果是告警群被低价值的误报淹没,真正的故障反而被淹没在噪声里:团队要么习惯性忽略告警,要么在半夜被无意义的页面叫醒。
这个技能做了什么
它围绕告警规则调优展开,核心能力包括:
- 通过 Prometheus HTTP API 拉取现有 alerting rules 与告警触发历史
- 用 PromQL 查询分析指标分布,判断当前阈值与实际流量的差距
- 借助
histogram_quantile基于直方图分位数重新计算阈值,而不是随手拍一个数字 - 配置抑制规则(inhibition rules),让低优先级告警在高优先级告警触发时被压下去
大致流程:
- 读取规则列表和近期 firing 记录,找出频繁触发的告警
- 用 PromQL 分析相关指标的分位数分布
- 给出新的阈值建议并评估影响
- 补充 inhibition rules,减少级联告警
适用边界
- 依赖 Prometheus 暴露的 HTTP API,且需要对规则有读写权限
histogram_quantile的准确性取决于客户端埋点是否提供了正确的lebucket- 抑制规则设置过强可能把真实故障也一并压掉,需要逐步灰度验证
- 它解决的是规则调优问题,不替代监控架构本身的设计
截图预览
使用场景
- 告警群长期被误报刷屏,需要基于触发历史和指标分布收紧阈值
- 关键服务告警与边缘服务告警同时触发,需要配置抑制规则降噪
- 新监控指标上线后阈值不合理,需要用 histogram_quantile 重算分位数阈值
- 周期性梳理告警规则,需要分析 PromQL 查询结果并调整阈值
适合人员
- 负责 Prometheus 集群的 SRE 工程师,需要降低告警噪声
- 维护监控规则的平台运维工程师,需要批量调整阈值和抑制规则
- 处理告警工单的值班工程师,需要定位误报根因并优化规则