使用场景
PushGateway 是 Prometheus 生态中的一个重要一员,它允许任何客户端向其 Push 符合规范的自定义监控指标,再结合 Prometheus 统一收集监控。Prometheus Pushgateway 用于接收短期任务的指标数据,这些任务通过服务发现的监控系统无法直接监控。Pushgateway允许临时性的工作(如批处理作业)将指标推送到一个中央位置,而无需直接暴露其指标。这些数据可以被Prometheus服务器拉取和进行持久化存储。
一键安装
1. 登录 腾讯云可观测平台。
2. 在左侧菜单栏中单击 Prometheus 监控。
3. 在实例列表中,选择对应的 Prometheus 实例。
4. 进入实例详情页,单击数据采集 > 集成中心。
5. 在集成中心搜索 Pushgateway,找到后单击它即会弹出一个安装窗口。
6. 在弹出窗口的安装页面,根据提示填写相关信息,并单击保存。
配置说明
参数 | 说明 |
名称 | 集成名称,命名规范如下: 名称具有唯一性。 名称需要符合下面的正则:'^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$'。 |
采集超时 | Pushgateway 采集超时,时间格式,不能大于采集间隔。 |
采集间隔 | Pushgateway 采集间隔,时间格式。 |
CPU/核 | Pushgateway CPU 核数限制,不能大于64。 |
内存/Gi | Pushgateway 内存限制,配置时需带上单位Gi,不能大于512Gi。 |
7. 在已集成列表中获取 Pushgateway 地址信息。
数据推送
Pushgateway 安装成功之后能获取到交互用的地址,使用该地址即可进行 Pushgateway 相关操作。
1. 获取组件状态:
curl -X GET http://10.*.*.*:8080/api/v1/status
2. 向 {job="some_job"} 添加单条数据:
curl --location --request POST '10.*.*.*:8080/metrics/job/some_job' \\--header 'Content-Type: text/plain' \\--data 'some_metric 3.14'
3. 添加复杂数据到具体 instance 中:
curl --location --request PUT '10.*.*.*:8080/metrics/job/some_job/instance/some_instance' \\--header 'Content-Type: text/plain' \\--data '# TYPE some_metric countersome_metric{label="val1"} 42# TYPE another_metric gauge# HELP another_metric Just an example.another_metric 2398.283'
4. 删除 {job="some_job",instance="some_instance"} 下的所有数据:
curl -X DELETE http://10.*.*.*:8080/metrics/job/some_job/instance/some_instance
5. 删除 {job="some_job"} 下的所有数据(不包括 {job="some_job",instance="some_instance"} 下的数据):
curl -X DELETE http://10.*.*.*:8080/metrics/job/some_job
查看监控
前提条件
Prometheus 实例已绑定 Grafana 实例。
操作步骤
1. 登录 Prometheus 监控服务控制台,选择对应 Prometheus 实例进入管理页面。
2. 在实例基本信息页面,找到绑定的 grafana 地址,打开并登录,然后即可在 Explore 中查看推送的指标,也可新建相应的面板查看指标: