gpt4 book ai didi

monitoring - 普罗米修斯增加不处理进程重新启动

转载 作者:行者123 更新时间:2023-12-03 22:16:34 24 4
gpt4 key购买 nike

我试图弄清楚 Prometheus 的 increase() 查询函数在进程重新启动时的行为。

当在 2m 间隔内有一个进程重新启动时,我查询:

sum(increase(my_metric_total[2m])) 

我得到的值低于预期。

例如,在一个简单的实验中,我模拟了:
  • 3 lcm_restarts
  • 1 个进程重启
  • 2 lcm_restarts

  • 全部在 2 分钟的间隔内。

    查询时:
    sum(increase(lcm_restarts[2m])) 

    当我期待 5 时,我收到了 ~4.5 的值。

    lcm_restarts graph

    sum(increase(lcm_restarts[2m])) result

    有人可以解释一下吗?

    最佳答案

    非常简洁且准备充分的第一个问题。请保持这种精神!

    使用计数器时,函数为 rate() , irate()还有 increase()由于重新启动,正在调整重置。除了名称所暗示的之外,increase()函数不计算给定时间范围内的绝对增加,而是另一种写法 rate(metric[interval]) * number_of_seconds_in_interval . rate()函数采用系列中的第一个和最后一个测量值,并计算给定时间内每秒增加的量。这就是为什么您可能会观察到非整数增加的原因,即使您总是以完整的数字增加,因为测量值几乎从来没有恰好在间隔的开始和结束处。

    有关这方面的更多详细信息,请查看 prometheus docs for the increase() function .在 robust perception blog 中使用计数器时还有一些关于什么和不该做什么的很好的提示。 .

    看看您的标签尺寸,我还认为计数器重置不适用于您构建的示例。有一个标签叫 reason在重新启动之间发生了变化,因此创建了第二个时间序列(不继续现有的)。在这里,您基本上也总结了两个不同时间序列增加的速率,(对于它们自己)都发生了外推。

    所以基本上你所做的没有任何问题,你不应该依赖于从 prometheus 中获取高度精确的数字来用于你的用例。

    关于monitoring - 普罗米修斯增加不处理进程重新启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52012391/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com