【BIGDATA】Grafana告警之webhook的坑


  

 

近日搭建一套基於ELK&Grafana的監控告警平台,目的是將生產端某性能日志導入ES中,通過Grafana進行可視化監測,同時設置告警。

告警內容推送到自建的webhook服務后,轉發到指定的企業微信機器人,這樣可以在企業微信群中看到對應告警內容。

整體架構如下圖:

 

 

 

 

 

 

 

ELK部分略去不表。重點在於,自行編寫webhook,解析告警內容並推送到企業微信機器人。

通過查看Grafana官網文檔: https://grafana.com/docs/grafana/latest/alerting/notifications/#webhook  了解到,推送的告警內容為json,格式如下:

{
  "dashboardId":1,
  "evalMatches":[
    {
      "value":1,
      "metric":"Count",
      "tags":{}
    }
  ],
  "imageUrl":"https://grafana.com/static/assets/img/blog/mixed_styles.png",
  "message":"Notification Message",
  "orgId":1,
  "panelId":2,
  "ruleId":1,
  "ruleName":"Panel Title alert",
  "ruleUrl":"http://localhost:3000/d/hZ7BuVbWz/test-dashboard?fullscreen\u0026edit\u0026tab=alert\u0026panelId=2\u0026orgId=1",
  "state":"alerting",
  "tags":{
    "tag name":"tag value"
  },
  "title":"[Alerting] Panel Title alert"
}

於是,webhook以此為標准進行數據解析。

一番操作后發現,企業微信機器人並未推送任何告警。

檢查了告警推送條件,並嘗試了郵件告警,都正常。

回過頭來,單獨check了Grafana推送的告警json,發現,巨坑

 

 

 

 

實際推送內容和官網文檔中提供的字段不一致。

自此,修改代碼,問題解決,告警效果如下。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM