在 InfluxDB 中,我可以获得仅具有某些测量值的主机列表吗?

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

我们使用 InfluxDB 0.10.1 进行监控,使用 Grafana 2.6 显示结果。在 Grafana 模板设置中,我有一个带有此 InfluxDB 查询的变量 ($host): 使用 KEY =“host”显示标签值

这为我提供了数据库中所有主机的列表。但是,我想知道,是否有一种方法可以向该查询添加一些内容,从而仅选择为其显示特定测量值的主机?例如,我们仅在数据库中的一部分主机上安装了 WebSphere Liberty Profile,并且我希望仅这些主机显示在仪表板的下拉列表中。

influxdb grafana
3个回答
4
投票

应该是这样的:

SHOW TAG VALUES ON "database" FROM "measurement" WITH KEY =~ /host/ WHERE product =~ /tag/

1
投票

SHOW TAG VALUES
不接受
WHERE
子句,因此无法进一步过滤查询。请参阅 https://github.com/influxdata/influxdb/issues/5245 了解密切相关的问题。

可以使用 SELECT 查询来完成,但您必须更具体地了解 WebSphere 信息的编码方式。您是说您为每种类型的主机使用不同的“测量”名称吗?或者 WebSphere 主机上是否有额外的 tagfield


0
投票

from(bucket: "test-bucket") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "cpu") |> filter(fn: (r) => r["_field"] == "usage_system") |> filter(fn: (r) => r["cpu"] == "cpu-total") |> keep(columns: ["host"]) |> group() |> unique(column: "host")

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