Prometheus PromtQL功能“;按(论据1、论据2)计数;

Prometheus PromtQL功能“;按(论据1、论据2)计数;,prometheus,Prometheus,我用Prometheus(PromQL)编写了一些请求,只是想了解函数“countby(argument1,argument2)”是如何工作的? 如果我们有一个参数-这很简单,但对于许多参数,我找不到有关计数方式的信息 有人能解释一下吗?PromQL中的度量值是沿着一个维度累积的。在普罗米修斯,尺寸由标签名称和值表示;具有的所有度量都有一个公共维度 如果不保留维度,则将对所有值执行聚合,丢弃任何标签 举例来说,给定以下指标(我冰箱的内容): 所有水果和蔬菜的总和sum(水果编号或蔬菜编号)将生成

我用Prometheus(PromQL)编写了一些请求,只是想了解函数“countby(argument1,argument2)”是如何工作的? 如果我们有一个参数-这很简单,但对于许多参数,我找不到有关计数方式的信息

有人能解释一下吗?

PromQL中的度量值是沿着一个维度累积的。在普罗米修斯,尺寸由标签名称和值表示;具有的所有度量都有一个公共维度

如果不保留维度,则将对所有值执行聚合,丢弃任何标签

举例来说,给定以下指标(我冰箱的内容):

所有水果和蔬菜的总和
sum(水果编号或蔬菜编号)
将生成一个标量:

{}     8
但是,如果只想在某些维度上应用运算符,可以使用
by
子句指示应保留哪些标签

如果我想通过
color
size
知道易腐食品的数量,我将通过(颜色、大小)请求
sum(水果编号或蔬菜编号)

它聚合标签集相同的值,并应用运算符(
sum
,在这种情况下):

  • {color=“red”,size=“small”}->红苹果+蘑菇
  • {color=“green”,size=“big”}->青苹果+沙拉
  • {color=“green”,size=“small”}->香蕉
PromQL中的是沿维度累积度量值。在普罗米修斯,尺寸由标签名称和值表示;具有的所有度量都有一个公共维度

如果不保留维度,则将对所有值执行聚合,丢弃任何标签

举例来说,给定以下指标(我冰箱的内容):

所有水果和蔬菜的总和
sum(水果编号或蔬菜编号)
将生成一个标量:

{}     8
但是,如果只想在某些维度上应用运算符,可以使用
by
子句指示应保留哪些标签

如果我想通过
color
size
知道易腐食品的数量,我将通过(颜色、大小)请求
sum(水果编号或蔬菜编号)

它聚合标签集相同的值,并应用运算符(
sum
,在这种情况下):

  • {color=“red”,size=“small”}->红苹果+蘑菇
  • {color=“green”,size=“big”}->青苹果+沙拉
  • {color=“green”,size=“small”}->香蕉
{color="red",size="small"}      5
{color="green",size="big"}      2
{color="green",size="small"}    1