如何使用django-prometheus和prometheus-client导出应用程序级别指标?

时间:2017-07-31 22:55:33

标签: python django uwsgi metrics prometheus

我将一个Django应用程序作为uwsgi服务器暴露给客户端,并在wsgi.ini中设置了多个进程和线程。我阅读了django-prometheus文档并实现了模型指标。我可以在浏览器上查看通过/ metrics端点公开的模型指标。然而,文档说:

  

您可以使用在代码中添加应用程序级指标   prometheus_client直接。出口商是全球性的,将会回升   你的指标。

但是我看不到这些指标的价值在增加。它们仍为0.0。

我在wsgi.ini文件中添加了 lazy = true enable-threads = true 。另外,正如文档建议我添加了

PROMETHEUS_METRICS_EXPORT_PORT_RANGE = xrange(8001, 8050)

在我的settings.py文件中,为不同的工作人员导出不同的端口。但是我仍然没有看到结果。还需要做些什么才能最终查看我为不同的芹菜工人和api添加的应用程序级别指标?

2 个答案:

答案 0 :(得分:0)

python prom_client文档不是很好,但它确实可以轻松公开应用程序级指标。

听起来您可能没有正确地将Prometheus指标类型实施到您的应用中。请指出代码,我很乐意看看。

您可能想查看博文here。在烧瓶网络应用程序中使用prom_client进行示例。

希望有所帮助。

答案 1 :(得分:0)

如果您将度量标准构建到芹菜工作者中,则很有可能它们属于“临时工作”类别,在这种情况下,您需要使用Pushgateway将度量标准发送给Prometheus。如果这样做没有帮助,请按照custom application metrics with Prometheus, Django, and Kubernetes上的本指南进行操作。