【问题标题】:Prometheus barely used counters not showing in GrafanaPrometheus 几乎没有使用过 Grafana 中未显示的计数器
【发布时间】:2020-11-18 10:33:23
【问题描述】:

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

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

在 Grafana 中,如下所示:

有趣的是,如果我以原始方式绘制数据,我确实看到 Prometheus 已经刮掉了它(以及这个计数器的其他变体,所有这些都被其中一个标签所区分):

我理解错了吗?是因为 Prometheus 的数据模型通过处理刮擦之间的增量来实际“计数”某些东西吗?如果有一个非常缓慢增加的计数器,其中有很多标签,那么 Prometheus 无法正确计算“增加”?

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

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

【问题讨论】:

  • 第二个屏幕截图显示在 ~10:38 之前没有 my_counter 的值,因此(假设是同一天)第一个屏幕截图中没有数据似乎并不完全令人惊讶。跨度>

标签: prometheus grafana micrometer


【解决方案1】:

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

在某些情况下,您可以通过在应用程序中手动初始化指标来抵消这种情况。虽然这只有在标签值的基数定义明确的情况下才有意义。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-04
    • 1970-01-01
    • 2018-12-24
    • 1970-01-01
    • 2019-07-14
    • 2018-05-11
    • 1970-01-01
    相关资源
    最近更新 更多