Grafana:使用名为`/ var(avail_MB)`的度量标准重写系列:“面板渲染错误'/ var(avail_MB)'不是有效的正则表达式。”

问题描述 投票:0回答:1

一个Icinga2插件(由我自己编写)返回的性能数据具有名为/var(avail_MB)/var(total_MB)和类似指标的指标。数据以Grafana为前端转发到InfluxDB。

我在仪表板的面板查询中使用“ GROUP BY”,“ tag(metric)”和“ ALIAS BY”,“ $tag_metric”。然后,指标名称将正确显示在图表下方。

但是,当我尝试通过指定“别名或正则表达式” /var(avail_MB)来覆盖系列时,它似乎不起作用,并且当从面板配置返回到仪表板时,我收到一条错误消息,内容为“ 面板渲染错误'/ var(avail_MB)'不是有效的正则表达式。“。我试图在()前面加一个反斜杠,但这无济于事。更糟糕的是,整个图形都消失了,并且当尝试打开“查询检查器”时,前端似乎要花很多时间(查询永远不会出现)。

是什么问题,我该如何解决?我是Icinga2,Grafana和InfluxDB的新手(我只是这些用户的“用户”而不是管理员)。

Grafana Panel Configuration before Series Override

Grafana Panel Configuration after Series Override

颜色更改未应用于图表。

这里是插件输出的示例:

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”是已修复的插件中的错误,但该数据并非来自所涉及的计算机。)

grafana influxdb icinga2
1个回答
0
投票

问题似乎是字符串(“ / var”)的开头。Grafana似乎将以/开头的每个字符串都视为正则表达式,并且它也期望以/开头的任何正则表达式。因此解决方法是添加尾随/,并将文字/转换为\/

不幸的是,这仅会删除错误消息,但不会使覆盖功能起作用(匹配)。还需要反斜杠转义括号和斜杠:

代替/var(total_MB),您需要写/\/var\(total_MB\)

原始问题必须来自:

  1. https://www.monitoring-plugins.org/doc/guidelines.html#AEN201处的监视插件规范指出:“ 2。标签可以包含除等号或单引号(')之外的任何字符”)指出允许除指标名称。

  2. Grafana v6.7.3提议“ alias或regex”的值不正确(即:未转义)。

这就是我造成问题的方式。

© www.soinside.com 2019 - 2024. All rights reserved.