原創-prometheus報警規則


需要將prometheus的報警規則存放在/etc/rules里面的yml文件中   同時prometheus的yaml文件需要開啟alertmanager,通過alertmanager觸發告警到各個平台,例如釘釘。

 

 ---

rules.yml文件

groups:

   - name: api-server /報警名

     rules:

     - alert: api-server_cnt /報警規則名稱

       for: 3m /持續時間

       expr: count(up{job="kubernetes-apiservers"}) > 2 /報警語法

       annotations: /報警的內容

         summary: "api-server大於2"

         values: "{{ $value }}"

       labels: /打標簽

         severity: error

         classification: lyz

         workline: xdrive

     - alert: InstanceGone
       for: 10s
       expr: absent(up{job="node"})
       annotations:
           summary: "host {{ $labels.instance }} is no longer reporting"
       labels:
       severity: critical
       classification: lyz2
       workline: xdrive

---

接着需要在alertmanager的配置文件中更新路由和接收者:

 

這里定義默認接收者為lyz,同時routes使用分支路由,匹配標簽為serverity為critical的告警規則,發送給lyz2

---

最后需要在dingtalk組件中定義你的接收者發送地址,這個百度即可解決。

---

重啟prometheus

---

如果成功,則可以在頁面中看到

 

---

一旦觸發警告,則可以在alertmanager控制台中看到

注意,這里silence可以配置靜默時間,可永久或暫停告警。

 

---

接着可以在釘釘等看到告警通知

 

---

告警成功。

 


免責聲明!

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



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