prometheus python client

本文详细介绍如何使用Python客户端库Prometheus_client实现监控指标的收集与展示。文章通过实例演示了Gauge数据类型的使用方法,包括定义标签、设置值及启动HTTP服务器提供监控数据等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当我刚开始准备使用Python写一个promethues的client的时候,并没有想到过程这么麻烦。github上的大佬们也没兴趣帮我解决这些细节的问题。以下是我在使用prometheus_client遇到的一些问题,仅供大家参考

首先参考下github上的例子

https://github.com/prometheus/client_python

我们使用Gauge这个数据类型来做示例,毕竟用的很多

from prometheus_client import Gauge
g = Gauge('my_inprogress_requests', 'Description of gauge')
g.set(value)   #value自己定义,但是一定要为 整数或者浮点数

这个例子非常简单,如果我们需要定义一些label,该如何做呢

from prometheus_client import Gauge
g = Gauge('my_inprogress_requests', 'Description of gauge',['mylabelname'])
g.labels(mylabelname='str').set(value)   #value自己定义,但是一定要为 整数或者浮点数
#此时一定要注意,定义Gague标签的时候是一个列表,列表可以存多个lablename,类型是字符串
#在给lable定义value的时候也要注意,mylablename 这里是一个方法,或者说是一个变量了,一定要注意.

好了,现在我们来启动一个http 

from prometheus_client import Gauge,start_http_server

from prometheus_client import Gauge
a = Gauge('a', 'Description of gauge')
a.set(345)   #value自己定义,但是一定要为 整数或者浮点数

g = Gauge('g', 'Description of gauge',['mylabelname'])
g.labels(mylabelname='jastme').set(123)   #value自己定义,但是一定要为 整数或者浮点数
#此时一定要注意,定义Gague标签的时候是一个列表,列表可以存多个lablename,类型是字符串
#在给lable定义value的时候也要注意,mylablename 这里是一个方法,或者说是一个变量了,一定要注意.

start_http_server(8000)

这样你就可以通过http访问到数据

但是请注意,这是个静态页面。

如果需要做一个动态页面,请

 

from prometheus_client import Gauge,start_http_server
import random

from prometheus_client import Gauge
a = Gauge('a', 'Description of gauge')
a.set(random.random())   #value自己定义,但是一定要为 整数或者浮点数

g = Gauge('g', 'Description of gauge',['mylabelname'])

#此时一定要注意,定义Gague标签的时候是一个列表,列表可以存多个lablename,类型是字符串
#在给lable定义value的时候也要注意,mylablename 这里是一个方法,或者说是一个变量了,一定要注意.

start_http_server(8000)
while True:
    g.labels(mylabelname='jastme').set(random.random())

这样g的值就是 随机的, 而a的值一直是固定的。

转载于:https://my.oschina.net/jastme/blog/1546174

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值