博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
prometheus python client
阅读量:5951 次
发布时间:2019-06-19

本文共 1607 字,大约阅读时间需要 5 分钟。

  hot3.png

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

首先参考下github上的例子

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

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

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

from prometheus_client import Gaugeg = 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_serverfrom prometheus_client import Gaugea = 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_serverimport randomfrom prometheus_client import Gaugea = 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

你可能感兴趣的文章
Python中使用ElementTree解析xml
查看>>
sed处理文本
查看>>
jquery 操作iframe、frameset
查看>>
解决vim中不能使用小键盘
查看>>
jenkins权限管理,实现不同用户组显示对应视图views中不同的jobs
查看>>
我的友情链接
查看>>
CentOS定时同步系统时间
查看>>
批量删除用户--Shell脚本
查看>>
如何辨别android开发包的安全性
查看>>
Eclipse Java @Override 报错
查看>>
知道双字节码, 如何获取汉字 - 回复 "pinezhou" 的问题
查看>>
linux下lvs搭建负载均衡集群
查看>>
JMS 实例讲解
查看>>
求教:如何成为一个优秀的项目经理人
查看>>
shell 脚本--备份、还原mysql数据库
查看>>
JS脚本静态变量调用方法
查看>>
linux中cacti和nagios整合
查看>>
Parallels Desktop12推出 新增Parallels Toolbox
查看>>
正则表达式验证身份证格式是否正确
查看>>
xml格式文件解析
查看>>