Grafana:使用名为“/var(avail_MB)”的指标覆盖系列:"Panel rendering error '/var(avail_MB)' is not a valid regular expression."
Grafana: Overrriding series with metric named `/var(avail_MB)`: "Panel rendering error '/var(avail_MB)' is not a valid regular expression."
一个 Icinga2 插件(由我自己编写)returns 性能数据,其指标名为 /var(avail_MB)
、/var(total_MB)
等。数据被转发到以 Grafana 作为前端的 InfluxDB。
我在仪表板的面板查询中使用 "GROUP BY" "tag(metric)" 和 "ALIAS BY"“$tag_metric
”。
指标名称会在图表下方正确显示。
然而,当我尝试通过指定 "alias or regex" /var(avail_MB)
来覆盖系列时,它似乎不起作用,并且当从面板配置返回到仪表板时,我收到一条错误消息说“面板渲染错误 '/var(avail_MB)' 不是有效的正则表达式。"。
我试图在 (
和 )
前面加一个反斜杠,但这没有帮助。
更糟糕的是,整个图表都消失了,当试图打开 "Query Inspector" 时,前端似乎一直在等待(查询从未出现)。
这是什么问题,我该如何解决?
我是 Icinga2、Grafana 和 InfluxDB 的新手(我只是 "user" 而不是这些的管理员)。
颜色更改未应用于图形。
这是插件输出的示例:
OK: /var: 3114/5632MB (55.30%), slope is NaN|/var(total_MB)=5631.56MB;;;0 /var(avail_pct)=55.30%;25;5;0;100 /var(avail_MB)=3114.12MB;10;5;0;5632 /var(est_avail_MB)=nanMB;10;5;0;5632
("nanMB" 是插件中的错误,已修复,但数据并非来自相关机器。)
问题似乎出在字符串的开头(“/var”)。
Grafana 似乎将每个以 /
开头的字符串视为正则表达式,并且它期望任何正则表达式也以 /
开头(似乎)。
因此解决方法是添加尾随 /
,并将文字 /
转义为 \/
。
不幸的是,这只会删除错误消息,但不会使覆盖工作(匹配)。
还需要对括号和斜杠进行反斜杠转义:
而不是 /var(total_MB)
你需要写 /\/var\(total_MB\)
.
原问题有两个来源:
https://www.monitoring-plugins.org/doc/guidelines.html#AEN201 处的监控插件规范指出:“2. 标签可以包含 除等号或单引号 (') 之外的任何字符") 声明除了 =
和 '
之外的任何字符都可以作为度量标准名称。
Grafana v6.7.3 为“别名或正则表达式”提出了不正确的(即:未转义的)值。
这就是我造成问题的方式。
一个 Icinga2 插件(由我自己编写)returns 性能数据,其指标名为 /var(avail_MB)
、/var(total_MB)
等。数据被转发到以 Grafana 作为前端的 InfluxDB。
我在仪表板的面板查询中使用 "GROUP BY" "tag(metric)" 和 "ALIAS BY"“$tag_metric
”。
指标名称会在图表下方正确显示。
然而,当我尝试通过指定 "alias or regex" /var(avail_MB)
来覆盖系列时,它似乎不起作用,并且当从面板配置返回到仪表板时,我收到一条错误消息说“面板渲染错误 '/var(avail_MB)' 不是有效的正则表达式。"。
我试图在 (
和 )
前面加一个反斜杠,但这没有帮助。
更糟糕的是,整个图表都消失了,当试图打开 "Query Inspector" 时,前端似乎一直在等待(查询从未出现)。
这是什么问题,我该如何解决? 我是 Icinga2、Grafana 和 InfluxDB 的新手(我只是 "user" 而不是这些的管理员)。
颜色更改未应用于图形。
这是插件输出的示例:
OK: /var: 3114/5632MB (55.30%), slope is NaN|/var(total_MB)=5631.56MB;;;0 /var(avail_pct)=55.30%;25;5;0;100 /var(avail_MB)=3114.12MB;10;5;0;5632 /var(est_avail_MB)=nanMB;10;5;0;5632
("nanMB" 是插件中的错误,已修复,但数据并非来自相关机器。)
问题似乎出在字符串的开头(“/var”)。
Grafana 似乎将每个以 /
开头的字符串视为正则表达式,并且它期望任何正则表达式也以 /
开头(似乎)。
因此解决方法是添加尾随 /
,并将文字 /
转义为 \/
。
不幸的是,这只会删除错误消息,但不会使覆盖工作(匹配)。 还需要对括号和斜杠进行反斜杠转义:
而不是 /var(total_MB)
你需要写 /\/var\(total_MB\)
.
原问题有两个来源:
https://www.monitoring-plugins.org/doc/guidelines.html#AEN201 处的监控插件规范指出:“2. 标签可以包含 除等号或单引号 (') 之外的任何字符") 声明除了
=
和'
之外的任何字符都可以作为度量标准名称。Grafana v6.7.3 为“别名或正则表达式”提出了不正确的(即:未转义的)值。
这就是我造成问题的方式。