使用正则表达式插值的Grafana Loki查询以选择变量

问题描述

在Grafana仪表板设置中,我基于查询(来自Loki的label_values(filename))创建了一个变量$ logfile,以便能够选择多个文件名。这些文件名有时包含点(子扩展名)。

在“日志面板”的查询中,我尝试对正则表达式中选择的值进行插值:

{filename=~".*\\/${logfile:regex}\\.log"}

以下描述的正则表达式插值表示,使用该符号对特殊字符进行一次转义: https://grafana.com/docs/grafana/latest/variables/advanced-variable-format-options/

但是select查询的正则表达式部分需要正确地转义双反斜杠(因此,当我选择“ file1”或“ file2”之类的选项时,它可以工作,但可以使用“ file3.ext”或“ file4.ext” “,它不会)。

如何实现?

谢谢

解决方法

我从另一位开发者那里得到了帮助。

关键是使用反引号:

{filename=~`.*\/${logfile:regex}\.log`}

然后它起作用了!

希望对搜索的人有用

,

我使用以下内容在Loki中搜索多个值。

|~ "(string1|string2)"

OR

{namespace="name",container="service"} |~ "(string1|string1)"