深色模式
告警值班联动
摘要:告警响了没人认领、半夜找不到人,是值班最大痛点。用 OnCall 系统接管排班与升级,Alertmanager 只负责把告警 POST 过去,认领/升级/交接都在 OnCall 里完成。
适用环境
- 已运行 Alertmanager
- 部署了 OnCall 平台(本文以 Grafana OnCall 为例,其他同理)
操作步骤
1. 在 OnCall 创建 Integration
登录 OnCall → Integrations → + New → 选 Prometheus/Alertmanager → 复制生成的 Webhook URL。
2. Alertmanager 指向它
yaml
receivers:
- name: 'oncall'
webhook_configs:
- url: 'https://oncall.example.com/integrations/prometheus/XXX'
send_resolved: true1
2
3
4
5
2
3
4
5
3. 配排班与升级链
在 OnCall 里:
- Schedules:设置轮班(周轮/日轮)
- Escalation Chains:Sev1 → 一线(5min 未认领)→ 二线(10min)→ 经理
4. 加载
bash
amtool check-config /etc/alertmanager/alertmanager.yml
curl -X POST http://localhost:9093/-/reload1
2
2
DANGER
oncall receiver 要按 severity 路由:Sev1 才进电话升级链,Sev4 进 IM 即可,否则全员被电话轰炸。
验证
bash
amtool alert add alertname=OnCallTest severity=critical
# OnCall 页面应出现该告警,并依据排班指派给当前值班人1
2
2
常见坑
WARNING
- 忘记配
send_resolved: true,故障恢复后 OnCall 仍显示未解决,误导值班。 - 排班为空(节假日/交接真空)时告警无人接,必须设 fallback 值班。