Alertmanager.yml
global:
resolve_timeout: 3m #问题解决持续观察时长
route:
group_wait: 10s # 分组等待时间
group_interval: 60s # 分组间隔时间
group_by: ['alertname','severity','channel','env'] # 根据哪个标签进行分组
receiver: dingding2warn #默认接受者名称
repeat_interval: 15m #默认重复发送间隔时间
routes: #默认路由
- receiver: "null" #不发送告警
match: #匹配条件(叠加)
channel: "nos"
nos: "nosend"
- receiver: dingding1crit #发到钉钉一级告警群
match:
channel: 'dd1crit'
env: pro
repeat_interval: 5m #重复发送间隔时间
continue: true #默认--告警在匹配到第一个子节点之后仍继续匹配
routes: #子路由,不满足子路由的都走默认路由
- match: #普通匹配
severity: 'warning'
repeat_interval: 15m
- receiver: dingding3info #发到钉钉三级告警群
repeat_interval: 60m
match_re: #正则匹配
channel: 'dd3info'
env: pro|uat
- receiver: weixin1crit #发到微信一级pro告警群
match:
channel: 'wx1crit'
env: 'pro'
repeat_interval: 5m
routes:
- match:
severity: 'critwarn'
repeat_interval: 6h
- match:
severity: 'warning'
repeat_interval: 15m
inhibit_rules: # 抑制告警发送
- source_match:
severity: 'critical'
target_match:
severity: 'warning'
equal: ['alertname','channel','env']
#当告警中要求的标签的值都相同时,如果发生critical级别告警,则不对warning级别告警进行通知
receivers: #定义接受者,和上面路由对应
- name: "null" #不发送告警
#dingding1
- name: dingding1crit #发到钉钉一级告警群
webhook_configs:
- send_resolved: true # 发送问题解决通知
url: http://10.30.9.160:8060/dingtalk/prod_ding/send #钉钉接口地址
- name: dingding3info #发到钉钉三级告警群
webhook_configs:
- send_resolved: true
url: http://devops-admin.jtexpress.com.cn/api/webhookmanager/webhookviewset/ #运维平台地址
- name: weixin1crit #发到微信一级pro告警群
webhook_configs:
- send_resolved: true
#url: http://10.30.13.209:30603/api/webhook #企业微信接口地址
说明:
1、当有告警事件发生时都会从配置文件中顶级的route开始路由,每一个路由都可以定义接受人以及匹配规则。
如果route中设置continue的值为false,那么告警在匹配到第一个子节点之后就停止继续匹配。
如果continue为true则会继续进行后续匹配。
2、如果当前告警匹配不到任何的子节点,那该告警将会基于当前路由节点的接收器配置方式进行处理。
告警匹配可以基于字符串或者基于正则表达式完成。