Мне нужно добавить метрики, а затем изменить текущие значения этих метрик.
Это мой скрипт на 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)
Все работает, но когда все метрики удалены, и я вижу только одну, которую я обновил.
Как я могу изменить значения метрик и оставить все остальные метрики?