通过grafana变量将正则表达式传递给prometheus查询

通过grafana变量将正则表达式传递给prometheus查询,prometheus,grafana,Prometheus,Grafana,我试图通过grafana变量将自定义变量传递给prometheus 我在grafana中设置的值如下: +(作为自定义All变量) eu.+ us.+ 变量用于查询中,例如: some_metric{availability_zone=~"$az", ...} All变量按预期工作,直接放入查询中的原始eu-.+值等也可以正常工作-但当通过下拉菜单分配变量时,不会返回任何度量。例如: some_metric{availability_zone=~"eu.+", ...} ..将所有指标与

我试图通过grafana变量将自定义变量传递给prometheus

我在grafana中设置的值如下:

  • +
    (作为自定义
    All
    变量)
  • eu.+
  • us.+
变量用于查询中,例如:

some_metric{availability_zone=~"$az", ...}
All
变量按预期工作,直接放入查询中的原始
eu-.+
值等也可以正常工作-但当通过下拉菜单分配变量时,不会返回任何度量。例如:

some_metric{availability_zone=~"eu.+", ...}
..将所有指标与标签正确匹配,如
availability\u zone=“eu-west-1”

我已经尝试在自定义值中转义和不转义,但是对于这两个自定义值,没有返回任何度量


这里怎么了?

要让ProMQ在匹配标签时使用正则表达式,必须使用
=~
而不是
=

您的查询应该如下所示:


一些度量{availability\u zone=~“$az”,…}

实现这一点的方法似乎是:

一些度量{availability\u zone=~“${az:pipe}”,…}


两个“gotchas”是您需要正则表达式比较“=~”和${variable:pipe}来运行正则表达式

谢谢你的回答-我已经在做了,我将更新示例查询。