grafana - Grafana + InfluxDB Flux - 用于显示多选变量输入的查询
问题描述
我们搭建了一个 Grafana cloud + InfluxDB 2.0(Flux 语言)云实例。作为其中的一部分,我们创建了一个带有“设备 ID”的自定义变量列表,称为devices
.
在面板中,我们希望显示参数数据,用户可以从devices
列表中选择一个或多个设备 ID 以将它们显示在面板中。这适用于单个设备 ID 选择,但不适用于多个设备。
应如何修改查询以根据 Grafana 下拉列表中的多选条目显示来自可变数量设备的数据?
from(bucket: "test-bucket-new")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "${devices}")
|> filter(fn: (r) => r["_field"] == "Speed")
|> aggregateWindow(every: v.windowPeriod, fn: mean)
|> yield(name: "mean")
解决方案
似乎以下解决了它:
from(bucket: "test-bucket-new")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => contains(value: r["_measurement"], set: ${devices:json}))
|> filter(fn: (r) => r["_field"] == "Speed")
|> aggregateWindow(every: v.windowPeriod, fn: mean)
|> yield(name: "mean")
推荐阅读
- python - 烧瓶python创建招摇文档错误
- go - 使用 go sarama 库获取 kafka 指标
- angular - Angular 5 - Ag 网格添加行
- html - 如何修复侧边栏将页面扩展得太远
- python - 如何在 Python 中绘制幅度突然变化的正弦波?
- scala - 从 spark 数据框中提取 2 个值的最优雅方法是什么?
- javascript - 将日期范围验证添加到 Saturn-datepicker
- r - 如何从 R 中的复杂 XML 中提取值而不丢弃没有现有值的节点?
- python - C服务器套接字拒绝python客户端的连接
- c# - c#中的DateTime.TryParseExact给出错误的值