希望通过python创建Prometheus客户端
拿这个代码
from prometheus_client import Counter
c = Counter('my_requests_total', 'HTTP Failures', ['method', 'endpoint'])
c.labels(method='get', endpoint='/').inc()
c.labels(method='post', endpoint='/submit').inc()
一切都很好,但我想在avery请求后设置新值,不要将新值增加到之前的值。
怎么能成功?
答案 0 :(得分:0)
你必须使用Gauge而不是Counter。
自述文件中的示例:
from prometheus_client import Gauge
g = Gauge('my_inprogress_requests', 'Description of gauge')
g.inc() # Increment by 1
g.dec(10) # Decrement by given value
g.set(4.2) # Set to a given value
另请参阅Prometheus指标类型:https://prometheus.io/docs/concepts/metric_types/
<强>计数器强>
计数器是一个累积指标,表示只会上升的单个数值。计数器通常用于计算所服务的请求,完成的任务,发生的错误等。计数器不应用于公开其编号也可能下降的项目的当前计数,例如,当前运行的goroutines的数量。使用仪表用于此用例。
<强>计强>
指标是一个指标,表示可以任意上下的单个数值。
仪表通常用于测量值,如温度或当前内存使用情况,但也可用于上升和下降的“计数”,如运行的goroutine数量。