You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Prometheus中计算指标日增量前过滤指定值?

解决Prometheus计算日增量时过滤特定值的问题

你可以通过先过滤掉值为0的样本,再计算delta的方式来解决这个问题,具体表达式如下:

delta((metric_name != 0)[1d])

说明:

  1. metric_name != 0:筛选出所有值不为0的瞬时样本,直接排除干扰的0值数据。
  2. (...) [1d]:将过滤后的瞬时向量转换为过去1天的范围向量,保留这段时间内所有非0的样本点。
  3. delta(...):对过滤后的范围向量计算增量,得到排除0值干扰后的日增量结果。

注意事项:

  • 如果过滤后的范围向量中不足2个有效样本(比如过去1天里只有1个非0样本,或者全被过滤掉了),delta会返回空结果——这是因为delta需要至少两个样本点才能计算差值。
  • 如果你的指标是计数器类型(值只会递增或重置),更推荐使用increase()函数替代delta(),它能自动处理计数器重置的情况,过滤0值的写法类似:increase((metric_name != 0)[1d])。

内容的提问来源于stack exchange,提问作者yellowhat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 19:37:02