prometheus pushgateway-簡單-腳本-自定義 - EOF 運維神器 federate + 多instances聚合


0.pushgateway的安裝和配置

tar -zxf pushgateway-1.2.0.linux-amd64.tar.gz

./pushgateway  &

在Prometheus添加配置

- job_name: 'node_111'
  static_configs:
    - targets: ['10.0.0.111:9100']labels:instance: 111_9100- targets: ['10.0.0.134:9100']labels:instance: 134_9100
- job_name: 'pushgateway_test'  #這個名稱可以自定義,后面會用到
  static_configs:
    - targets: ['10.0.0.111:9091']  #這里是pushgateway的地址

 

1.pushgateway發送數據的API格式

http://pustgatewayIP/metrices/job/job名/標簽名/標簽值
echo "metricname 120" | curl --data-binary @- http://10.0.0.111:9091/metrics/job/myjobname/labels/mylabelname

 2.數據類型

1、counter類型
#counter是可增長的,重啟時候會被置成0,用於任務個數,只增不減
cat <<EOF | curl --data-binary @- http://pushgatewayIP:9091/metrics/job/docker_runtime/instance/xa-lsr-billubuntu
    # TYPE docker_runtime counter
    docker_runtime{name="cadvisor"} 33
    docker_runtime{name="nginx"} 331
    docker_runtime{name="abc"} 332
EOF

2.發送gauage類型
"Random value of the request"
cat <<EOF | curl --data-binary @- http://pushgatewayIP:9091/metrics/job/docker_runtime/instance/xa-lsr-billubuntu
    # TYPE docker_runtime gauge
    # HELP docker_runtime time sec
    docker_runtime{name="nginx"} 22
   docker_runtime{name="cadvisor"} 22
   docker_runtime{name="bbc"} 22
EOF
參考:https://www.cnblogs.com/zqj-blog/archive/2004/01/13/11024834.html https://www.cnblogs.com/zqj-blog/p/11106724.html

3.promql簡單例子

cat <<EOF | curl --data-binary @- http://pushgatewayIP:9091/metrics/job/docker_runtime/instance/xa-lsr-billubuntu
 # TYPE docker_runtime counter docker_runtime{name="abc"} 332 EOF

rate(docker_runtime{name='abc'}[1m])

 4. Prometheus的數據符合格式

<metric name>{<label name>=<label value>, ...}
api_http_requests_total{method="POST", handler="/messages"}
https://prometheus.io/docs/concepts/data_model/#samples

 


免責聲明!

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



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