MENU

Alertmanager配置详解

• 2021 年 10 月 18 日 • Prometheus,监控分析

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、如果当前告警匹配不到任何的子节点,那该告警将会基于当前路由节点的接收器配置方式进行处理。

告警匹配可以基于字符串或者基于正则表达式完成。