Prometheus自定義監控告警項-3


prometheus 編寫告警規則

將自定義的告警規則寫到獨立的文件中,prometheus.yml中引用如下:

rule_files:
   - "rules/*.yml"
[root@localhost prome]# mkdir /usr/local/prome/rules

編輯一個新的名為node-server.yml文件

vim node-server.yml

groups:   # 告警分組
- name: Node-server.rules  # 組名稱
  rules:                #告警規則

  - alert: System Memory Used  # 告警主題名稱
    expr: 100-(node_memory_MemAvailable_bytes{job="node-server"}/node_memory_MemTotal_bytes{job="node-server"}*100) > 60  # 告警閾值
    for: 1m # 閾值持久時間
    labels:   # 標簽,定義告警級別
      severity: warning
    annotations:   # 告警描述信息
      summary: "Instance {{ $labels.instance }} : {{ $labels.job }} 內存使用率過高 "
      description: "{{ $labels.instance }} : {{ $labels.job }}  內存使用率超過60%.當前值: {{ $value }}"   # {{ $value }} 調用的是上面的promeSQL的值
  • 告警規則編寫完后,檢查一下配置
# 可以看到檢測到幾個報警規則文件和每個規則文件中定義了幾個告警規則
[root@localhost prome]# ./promtool check config prometheus.yml
Checking prometheus.yml
  SUCCESS: 2 rule files found

Checking rules/node-server.yml
  SUCCESS: 1 rules found

Checking rules/rules.yml
  SUCCESS: 1 rules found
  • 配置無誤后重載 prometheus 服務

一分鍾后收到郵件

同樣,一個資源組的其他監控項寫在同一個規則文件中的rules下定義多個告警項即可


免責聲明!

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



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