0

我正在使用 grafana 来监控网络设备。正如您在 screen1 看到的那样,我有许多监视器接口,28 个物理接口 + 许多虚拟 (vlan)。图表向我显示所有接口,但我希望并有机会从下拉列表中选择接口。然后我发现我可以用“变量”来解决这个问题。我做了一个变量,我可以选择我想要的界面,但是当我选择自定义界面时它并没有影响图形。

屏幕1

我的变量:

变量配置

我的数据库查询:

SELECT derivative(mean("ifHCInOctets"), 1s) *8 AS "Input", derivative(mean("ifHCOutOctets"), 1s) *8 AS "Output" FROM "autogen"."interface" WHERE $timeFilter GROUP BY time($__interval), "ifDescr" fill(null)
4

1 回答 1

0

WHERE “接口” =~ /^$ifDescr$/

制作仪表板时,在 grafana 查询中丢失查询周围的括号。那应该行得通。这就是我过滤主机名的方式,所以我的完整查询是

SELECT mean("usage_idle") * -1 + 100 FROM "cpu" WHERE "host" =~ /^$Server$/ AND "cpu" = 'cpu-total' AND $timeFilter GROUP BY time($Interval) fill(null)

这应该有助于拼凑您需要的查询。您可以只使用 Grafana 的查询生成器,只需更改 where 子句以使用变量的正则表达式值

Grafana 中的查询生成器

如果您使用 TICK 脚本编写或直接从 cli 查询数据库,则括号是正确的。Grafana 使用稍微不同的查询语法。

于 2018-06-18T16:00:32.630 回答