grafana可以绘制字符串类型的influxdb时间序列吗?

时间:2018-10-16 19:58:37

标签: grafana influxdb

我有一个来自恒温器的influxdb数据集,其数据模式为字符串格式(“关闭”,“热水”或“集中供热”)

我想在grafana中绘制两条线,一条线用于“热水”,另一条线用于“中央供暖”。这些集合的可能值为“ 1”和“ 0”。

(目前)在influxdb(https://github.com/influxdata/influxdb/issues/8627)中似乎无法做到这一点,所以我希望可以在grafana中进行此转换。

有没有办法在grafana中进行这种转换?

数据集:

name: boiler indicator
time                value
----                -----
1539706320366630912 off
1539706380315879936 off
1539706440368925184 off
1539706500364559872 off
1539706560358993152 off
1539706620359011840 off
1539706680363074048 off
1539706740348193024 hot water
1539706800366929920 off
1539706860366509056 off

所需的热水结果:

name: hot water
time                value
----                -----
1539706320366630912 0
1539706380315879936 0
1539706440368925184 0
1539706500364559872 0
1539706560358993152 0
1539706620359011840 0
1539706680363074048 0
1539706740348193024 1
1539706800366929920 0
1539706860366509056 0

1 个答案:

答案 0 :(得分:1)

否,Grafana仅显示TSDB提供的数据。您的InfluxDB结构的变通办法;尝试:

SELECT count(*) 
FROM "hot water"
WHERE "value"='hot water' AND time>NOW()-10m 
GROUP BY time(1m) fill(0)

这是无效的,因为按字段过滤需要对表进行全面扫描。对于大型数据集来说可能会很慢。

如果您想进行有效的查询并简化Grafana可视化,则应更改InfluxDB结构->使用数字字段值+最终使用字符串标签。