我需要添加指标,然后更改这些指标的当前值。 这是我在Python3上添加3个指标的脚本
add.py
from prometheus_client.exposition import basic_auth_handler
r = 10
def my_auth_handler(url, method, timeout, headers, data):
username = 'admin'
password = 'secret'
return basic_auth_handler(url, method, timeout, headers, data, username, password)
registry = CollectorRegistry()
g = Gauge('test_test', 'Random gauge', ['user_status', 'status', 'country', 'state', 'city'], registry=registry)
g.labels('1', 'Rejected', 'Canada', 'AB', 'Albany').set(r)
g.labels('1', 'Suspect', 'Canada', 'AB', 'Albany').set(r)
g.labels('1', 'Trusted', 'Canada', 'AB', 'Albany').set(r)
g.labels('0', 'Trusted', 'USA', 'AB', 'Albany').set(r)
push_to_gateway('localhost:9091', job='test', registry=registry, handler=my_auth_handler)
然后我要更改一个指标的值
update.py
from prometheus_client import CollectorRegistry, Gauge, push_to_gateway
from prometheus_client.exposition import basic_auth_handler
r = 10
def my_auth_handler(url, method, timeout, headers, data):
username = 'admin'
password = 'secret'
return basic_auth_handler(url, method, timeout, headers, data, username, password)
registry = CollectorRegistry()
g = Gauge('test_test', 'Random gauge', ['user_status', 'status', 'country', 'state', 'city'], registry=registry)
g.labels('1', 'Rejected', 'Canada', 'AB', 'Albany').set(r)
g.labels('1', 'Rejected', 'Canada', 'AB', 'Albany').dec()
push_to_gateway('localhost:9091', job='test', registry=registry, handler=my_auth_handler)
所有方法都可行,但是当所有指标都删除后,我只看到一个更新的指标。
如何更改指标值,并保留所有其他指标?