Prometheus 几乎没有使用在 Grafana 中未显示的计数器

标签 prometheus grafana micrometer

我的计数器很少增加。增加它的频率较低似乎给我们带来了麻烦,因为计数器应该代表的事件没有出现在 Grafana 中,即使我可以在/prometheus 端点中看到计数器:

my_counter{client="some_label", capture_channel="DESKTOP", instace_name="foo",stage="dev",testRequest="false",validation_issue="INVALID_SELECTION",} 1.0

在 Grafana 中,如下所示:

enter image description here

有趣的是,如果我以原始方式绘制数据图表,我确实看到 Prometheus 已经抓取了它(以及该计数器的其他变体,所有这些都通过标签之一来区分): enter image description here

我理解错了吗?是因为普罗米修斯的数据模型通过处理抓取之间的增量来实际“计数”某些东西吗?如果有一个增长非常缓慢的计数器,里面有很多标签,那么普罗米修斯就无法正确计算“增加”?

我也尝试过使用rate()函数,但没有任何作用。

sum(rate(my_counter[$__rate_interval])) by (validation_issue)

最佳答案

这是预期的,因为(通常)计数器在定义为零值时并未初始化。在第二个屏幕截图中,您什么也看不到,因为每个单独的时间序列只有一个数据点,因此 increase 无法返回任何内容,因为没有增加。

在某些情况下,您可以通过手动初始化应用程序中的指标来解决此问题。不过,只有在标签值的基数定义明确的情况下,这才有意义。

关于Prometheus 几乎没有使用在 Grafana 中未显示的计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64891317/

相关文章:

尽管 Prometheus 数据源已成功验证,但 Grafana 无法获取 Prometheus 指标

kubernetes - 如何安装带有Helm的Prometheus,以便可以从浏览器中使用它?

spring-boot - 使用 prometheus 查询缓存命中率图

kubernetes - 如何为数据源创建grafana configmap?

prometheus - 如何在普罗米修斯中按两个标签过滤?

slack - 在 Slack 中看不到 Grafana 图像

asynchronous - 如何使用千分尺计时器记录异步方法的持续时间(返回Mono或Flux)

java - 如何从异步值创建千分尺?

spring - 千分尺发送指标为零 - Spring Boot

docker - 在正则表达式中为 Prometheus 重新标记配置使用标签