在Grafana中,我有一个仪表板,它使用Flux1.x作为数据源,我正在迁移它以使用Flux2.0数据源和InfluxDB查询。
在Grafana仪表板中有一个名为"Server“的变量,它定义了以下查询:
SHOW TAG VALUES ON telegraf WITH KEY = "host"我真的很难用Flux query创建一个类似的变量。你知道怎么做到这一点吗?谢谢
发布于 2020-11-13 21:27:01
试试这个:
import "influxdata/influxdb/schema"
schema.measurementTagValues(
bucket: "my_bucket",
tag: "host",
measurement: "my_measurement"
)发布于 2020-11-04 17:27:20
这对我来说很有效:
from(bucket: "telegraf")
|> range(start: -15m)
|> group(columns: ["host"], mode:"by")
|> keyValues(keyColumns: ["host"])注意:如果你想要更长的时间(例如-30d),性能会很慢,你可以通过只加载一次这个查询来解决这个问题(在grafana变量中可用),或者最好添加一些过滤器和选择器
例如:
from(bucket: "telegraf")
|> range(start: -30d)
|> filter(fn: (r) => r._field == "you field")
|> filter(fn: (r) => /* more filter*/)
|> group(columns: ["host"], mode:"by")
|> first()
|> keyValues(keyColumns: ["host"])发布于 2021-01-12 03:03:05
我使用下面的flux-code来提取存储桶"telegraf“的所有主机标记值-就像你发布的InfluxQL一样:
import "influxdata/influxdb/schema"
schema.tagValues(bucket: "telegraf", tag: "host")InfluxDB在他们的文档中有一些关于这方面的内容:https://docs.influxdata.com/influxdb/v2.0/query-data/flux/explore-schema/#list-tag-values
https://stackoverflow.com/questions/63480988
复制相似问题