如何解释在重置时increase() 会变成decrease()?

编程语言 2026-07-12

我在努力理解 increase() 函数是如何工作的,但我无法解释这种行为。

例如,我想获取在过去24小时内已被重置的计数器的总增量。在网上的资料中,我了解到需要使用 increase() 函数,它可以帮助我管理计数器的重置。

但我的情况是:bytes_out_total,以及 increase(bytes_out_total[24h]) 这个increase函数。

双图,一张是原始数据 bytes_out_total,另一张是 increase(bytes_out_total[24]) 递减

三图,一张是原始数据 bytes_out_total,一张是 increase(bytes_out_total[24]) 递减,第三张是用红色手绘的期望图

我是不是漏掉了什么?为了得到期望的图类型,我的PromQL应该怎么写?

解决方案

increase(some_metric[d]) 返回在区间 (t-d ... t] 内对 some_metric 的增量,其中 t 是计算 increase() 的时间戳,而 d 是在方括号中指定的往回观察窗口(区间)。有关详情,请参阅这些文档

因此,在Grafana的图上,对 increase(bytes_out_total[24h]) 的每个点都显示在该点结束前的24小时内对 bytes_out_total 的增量。increase() 函数能够像没有计数器重置一样正确处理重置,因此这里可以忽略计数器重置这一事实。increase(...) 图在计数器重置之后会下降,因为过去24小时内对 bytes_out_total 的增量在那里变小了。

站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章