Прометей не может собирать данные для счетчика при вызове инкремента из задач консоли ipython или сельдерея.Счетчик работает для запроса API, но вне запроса API не работает, как если бы я попробовал его из консоли Ipython, из задач сельдерея, чтобы увеличить счетчик.
Прометей также не выбрасывает никаких исключений.
# Using Sanic python framework (async) and python 3.6.
Here are the library Details:
sanic==0.7.0
ipython
prometheus-client==0.5.0
python 3.6.5
Вот конфигурация, которую я использую в приложении Sanic Python для настройки Prometheus:
class MetricsHandler(HTTPMethodView):
"""prometheus metrics exporter"""
async def get(self, request, *args, **kwargs):
registry = None
if 'prometheus_multiproc_dir' in os.environ:
registry = core.REGISTRY
else:
registry = CollectorRegistry()
multiprocess.MultiProcessCollector(registry)
data = generate_latest(registry)
return raw(data, content_type=CONTENT_TYPE_LATEST)
# ipython console example:
In [1]: Prom_Count = Counter('Prom_Counter', 'prom counter', ['func', 'count'])
In [2]: Prom_Count.labels("test", "count").inc()
prometheus_multiproc_dir enviroment varibale is also set.
Ранее мы использовали библиотеку sanic-prometheus:
prometheus-client==0.2.0
sanic-prometheus==0.1.4
wrapt==1.10.11
Заранее спасибо.