普罗米修斯刮掉指标后如何重置指标状态?

How to reset state of metrics after prometheus scrapes it?

我是 Prometheus 的新手,目前正在将 Spark Streaming 指标集成到 Prometheus。我在 Spark Streaming 中收集有关 Batch Completed 事件的不同指标,并希望将这些指标存储到普罗米修斯。请注意,在每个批处理完成的事件中,我都有一个指标需要 抓取 到普罗米修斯。我知道普罗米修斯遵循拉模型。我还看到它有推送导出器,它只推送最新的指标值,但在我的例子中,因为它基于完成的事件,所以它可以是指标列表,所以我不能遵循这种方法。我该如何设计这样的系统?

我正在考虑将我的指标存储在缓冲区中并公开一个普罗米修斯服务器将监听的休息调用(我将在其中重置我的指标,因为普罗米修斯已经使用了它)。这是正确的方法吗?或者我们可以做点别的?

Prometheus Pushgateway [https://github.com/prometheus/pushgateway] 可以帮助您解决这个问题,您可以创建客户端,一旦完成就会推送作业的指标。您可以在下面找到不同的实现 link

https://prometheus.io/docs/instrumenting/pushing/