現在、Grafana パネルで 2 つのセンサーの結果の差を表示しようとしています。InfluxDB データベースには、両方のセンサーの値を保持する測定値があります。
> SELECT * FROM "Vergleich" WHERE time>now()-2m
name: Vergleich
time rh_dht22 rh_tfa temp_dht22 temp_tfa tp_dht22 tp_tfa
---- -------- ------ ---------- -------- -------- ------
1611407400000000000 45 21.883333333333333 9.40611175608533
1611407433000000000 47 21.3 9.5
1611407460000000000 45 21.833333333333332 9.360802312324173
1611407493000000000 47 21.2 9.4
両方のセンサー (DHT22 と一部の TFA デバイス) にそれぞれ 3 つの値を保存しました。同じタイムスタンプは提供されませんが、問題にはなりません。さまざまなセンサーがどの程度同様のデータを提供しているかを確認するために、差を計算したいと思います。
流入からいくつかの有用なデータを取得できます:
> SELECT mean("temp_dht22") - mean("temp_tfa") AS "d_temp_dht22" FROM "Vergleich" WHERE time>now()-5m GROUP BY time(60s) fill(null)
name: Vergleich
time d_temp_dht22
---- ------------
1611407220000000000
1611407280000000000 -0.6000000000000014
1611407340000000000 -0.6000000000000014
1611407400000000000 -0.5833333333333321
1611407460000000000 -0.6333333333333329
1611407520000000000
残念ながら、これをGrafanaパネルに追加することはできません。クエリを追加してこのコードを入力すると
SELECT mean("temp_dht22") - mean("temp_tfa") AS "d_temp_dht22" FROM "Vergleich" WHERE $timeFilter GROUP BY time($__interval) fill(null)
自動的に変更されます
SELECT "temp_dht22" -, "temp_tfa" AS "d_temp_dht22" FROM "Vergleich" WHERE $timeFilter GROUP BY time($__interval) fill(null)
グラフには「データなし」とだけ表示されます。
私の Grafana のバージョンは「v7.3.7 (1e261642f4)」で、Raspberry 3B+ と RaspiOS Buster で実行しています (2020 年 12 月 2 日の画像)。
パネルのフィールドにクエリを挿入する方法に関するヒントがあれば、ぜひ教えてください。