在 InfluxDB 中,我可以获得只有特定测量值的主机列表吗?

In InfluxDB, can I get a list of hosts that have only certain measurements?

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

显示标签值

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

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

可以使用 SELECT 查询来完成,但是您必须更具体地说明 WebSphere 信息的编码方式。您是说您在 WebSphere 主机上使用不同的 measurement name for each type of host? Or is there an additional tag or field 吗?

应该是这样的:

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