Alertmanager配置问题:仅工作日9-18点接收Opsgenie告警失败
问题分析与解决
你的Alertmanager配置存在几个关键错误,导致添加mute_time_intervals后无法正常接收告警,具体问题和修正方案如下:
配置中的错误点
- 重复的时间区间名称:两个
time_intervals都使用specific_hour作为名称,后定义的会直接覆盖前一个,导致工作日非工作时间的静音规则完全失效。 - 引用不存在的时间区间:
route里的mute_time_intervals引用了week_time_no_alert,但配置中根本没有定义这个时间区间,会导致配置解析异常。 - 周末时间区间配置无效:周末的
start_time和end_time都设为00:00,这个区间仅代表一个瞬间,无法实现全天静音的效果。
修正后的完整配置
route: - receiver: "opsgenie-horsprod" group_by: ["hostname", "alertname"] matchers: [ severity=CRITICAL, alertname="VM Down" ] repeat_interval: 1h group_wait: 0s group_interval: 1s continue: true mute_time_intervals: - workhours_off - weekend_full ... time_intervals: - name: "workhours_off" time_intervals: - weekdays: ['monday:friday'] times: - start_time: "18:00" end_time: "09:00" # 跨天区间会自动识别为当天18点到次日9点 - name: "weekend_full" time_intervals: - weekdays: ['saturday:sunday'] times: - start_time: "00:00" end_time: "24:00" # 覆盖周末全天的静音区间 ... - name: "opsgenie-horsprod" opsgenie_configs: - api_key: "xxx" api_url: https://api.eu.opsgenie.com/ send_resolved: true
后续验证步骤
- 检查配置合法性:执行命令
alertmanager --config.check-config --config.file=alertmanager.yml,确保配置无语法错误。 - 重启Alertmanager服务,让新配置生效。
内容的提问来源于stack exchange,提问作者Raphyyy
相关产品推荐
相关产品推荐

