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
用一个例子来演示会更加清晰
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
2019-09-17 hbase增量和全量备份