Prometheus pushgateway Counter inc not correctly

Viewed 829

Prometheus pushgateway counter inc not correct,maybe pushgateway just support set value?

enter image description here

the value always be 1, not inc as expect.

code show as below:

class PrometheusClient(object):

    def __init__(self):
        self.push_url = "prometheus-pushgateway:9091"

    def push(self):
        registry = CollectorRegistry()
        c = Counter('news_crawler', 'crawl count', labelnames=['source', 'source_name'], registry=registry)
        c.labels(source=2, source_name='jin_flash').inc()
        push_to_gateway(self.push_url, job='news_crawler_collector', registry=registry)
1 Answers

adjust the code with creating counter when init

class PrometheusClient(object):

    def __init__(self):
        self.push_url = "prometheus-pushgateway:9091"
        self.registry = CollectorRegistry()
        self.counter = Counter('news_crawler', 'crawl count',
                               labelnames=['source', 'source_name'], registry=self.registry)

    def push(self):
        self.counter.labels(source=2, source_name='jin_flash').inc()
        push_to_gateway(self.push_url, job='news_crawler_collector', registry=self.registry)


cli = PrometheusClient()
Related