prometheus使用釘釘告警

prometheus自帶的郵件告警,有可能被淹沒在日常郵件中。 因此建議再配一個webhook類的告警通道。 


如果爲了靈活性,我們可以自己寫webhook,例如 可以實現不同規則的告警通知到不同的接收人、某些時間段的告警靜默等 。 

如果要求不高的話,我們還可以使用國內第三方的告警webhook(例如 釘釘dingtalk、貝洽bearychat)


這裏我就以釘釘爲例:


github上有開源的項目,可以直接使用 

地址: https://github.com/timonwong/prometheus-webhook-dingtalk


下載binary包:prometheus-webhook-dingtalk-0.3.0.linux-amd64.tar.gz

tar xf prometheus-webhook-dingtalk-0.3.0.linux-amd64.tar.gz -C /usr/local/

cd /usr/local/prometheus-webhook-dingtalk-0.3.0.linux-amd64 

./prometheus-webhook-dingtalk --ding.profile="ops_dingding=https://oapi.dingtalk.com/robot/sendaccess_token=xxxxxxxxxxxxxxxxxxxxxx"   前臺啓動進程

TIPS: 這個token是從dingding裏面新建機器人的時候拿到的,可以自行去搜搜看如何添加釘釘機器人,這裏就跳過了。



然後,我們還需要到alertmanager那邊

global: 

  resolve_timeout: 5m

receivers:

- name: 'dingding.webhook'

  webhook_configs:

  - url: 'http://${prometheus-webhook-dingtalk的服務器地址}:8060/dingtalk/ops_dingding/send'

    send_resolved: true

route:

  group_by: ['cluster','alertname','job']

  group_wait: 30s

  group_interval: 1m 

  repeat_interval: 5h 

  receiver: 'dingding.webhook'

  routes:

  - match:

      severity: critical

    receiver: 'dingding.webhook'

    group_wait: 10s

    group_interval: 15s

    repeat_interval: 5m

  - match:

      severity: warning

    receiver: 'dingding.webhook'

  - match:

      alertname: Watchdog

    repeat_interval: 1h




然後,重載下alertmanager的配置,即可生效了。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章