5.prometheus通過記錄規則持久查詢


一、查詢持續性

到目前為止,我們只是在表達式瀏覽器中運行查詢。雖然查看該查詢的輸出很方便,但結果仍然是臨時存儲在Prometheus服務器上,我們可以通過以下三種方式使查詢持久化:
* 記錄規則:根據查詢創建新指標
* 報警規則:從查詢生成警報
* 可視化:使用Grafana等儀表板可視化查詢
  記錄規則存儲在Prometheus服務器上,位於Prometheus服務器加載的文件中。規則是自動計算的,頻率則由prometheus.yml配置文件的global塊中的evaluation_interval參數控制。
  規則文件在Prometheus配置文件的rules_files塊中指定。

二、示例

在prometheus.yml文件的同一文件夾中創建一個 名為rules的子文件夾,用於保存我們的記錄規則,並且為節點指標創建一個名為node1_rules.yml的文件。
[root@node1 opt]# cd /opt/prometheus/
[root@node1 prometheus]# mkdir rules
[root@node1 prometheus]# cd rules/
[root@node1 rules]# vim node1_rules.yml
[root@node1 rules]# cat node1_rules.yml
groups:
- name: node1_rules
  rules:
  - record: instance:node_cpu:avg_rate1m
    expr: 100-avg(irate(node_cpu_seconds_total{mode="idle"}[1m])) by (instance)*100
    labels:
      metric_type: aggregation
 
[root@node1 prometheus]# vim prometheus.yml  # 修改prometheus.yml,添加配置
rule_files:
   - "rules/node1_rules.yml"
 
[root@node1 prometheus]# docker container rm -f  prometheus-server  #由於之前是掛載的prometheus.yml,所以重新啟動一下prometheus-server,把rules掛到容器里。
[root@node1 prometheus]#  docker run --name prometheus-server -d -p 9090:9090 -v /opt/prometheus/:/etc/prometheus/ prom/prometheus
瀏覽器訪問該地址,可以查看到我們手動添加的rules: http://192.168.42.133:9090/rules
-----
 


免責聲明!

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



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