【发布时间】:2021-07-07 07:39:47
【问题描述】:
我的 Prometheus 正在暴露当前 30 秒的时间间隔数据。
基础 PromQL:
local_cache_miss{kind="something"}
计算 PromQL:
max_over_time(local_cache_miss{kind="$interfaceKey"} [1m]) - min_over_time(local_cache_miss{kind="$interfaceKey"} [1m])
其中最小时间间隔 = 30s
它对我来说非常好。
当我选择 1m 或较大的时间间隔时。 我开始得到一些我没想到的数据。
这里有一些我需要的东西,因为不同之处在于,
目标公式:相邻两行之间的缓存未命中值之差。
1188745 - 1188671 = 74(第二行差异列)
1188784 - 1188745 = 39(第一行的差异列)
基于使用函数 rate 或 increase 的建议,当我使用高于 30 秒 的间隔时,我发现计数略有不同强>。有什么方法可以将 [1m] 与 Grafana 区间对齐?
使用rate或increase函数,
1188784 - 1188745 = 39,但它返回 38。
1188745 - 1188671 = 74,但它返回 76。
即使我在选择12小时时选择15s作为“最小时间间隔”,“最小时间间隔”在内部变成了30s ,当我选择持续时间24小时或更多时,“最小时间间隔”内部变成1m。
我知道有一个变量可以跟踪[$__interval],但不确定我应该如何使用它来获得准确的计数返回。
我正在寻找编写相应 PromQL 以获得差异的建议。
【问题讨论】:
标签: monitoring prometheus grafana