没有在这里做平均

时间:2019-04-07 09:53:00

标签: prometheus promql

我看到一个PromQL已针对Linux系统上的节点导出器运行,如下所示:

avg without(cpu, mode)(rate(node_cpu_seconds_total{mode="idle"}[1m]))

我很容易理解以下内容:

rate(node_cpu_seconds_total{mode="idle"}[1m]

但是我没有得到什么

avg without(cpu, mode)

在做。有什么用     没有(cpu,模式)

您能帮忙吗?

谢谢

1 个答案:

答案 0 :(得分:0)

documentation here包含有关without子句的详细信息:

  

without从结果向量中删除列出的标签。

对于您而言,查询实际上应该是avg (rate(node_cpu_seconds_total{mode="idle"}[1m])) without (cpu, mode)withoutavg()之后)。

它将同时删除标签cpumode(顺便说一句,模式始终为idle)并计算每个实例可用的平均空闲cpu。

fyi,也可以通过使用by (instance)而不是without(cpu, mode)来实现。