NEWS
Visualisierung eines Status in Grafana über InfluxDB
-
Hallo zusammen,
ich würde gerne die Status meiner USV "Verbunden" (true/false) oder was sie gerade macht (laden, entladen etc.) in Grafana als Textausgabe visualisieren. Dazu greife ich die entsprechenden Werte in ioBroker ab und leite sie an InfluxDB weiter.
In InfluxDB bekomme ich dann die folgende, korrekte Syntax:
from(bucket: "iobroker_0") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "usv_status") |> filter(fn: (r) => r["_field"] == "value") |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false) |> yield(name: "mean")
Übertrage ich das dann in Grafana bekomme ich den Wert (hier: "OL") jedoch nicht angezeigt - egal welches Panal ich aufrufe.
Was mache ich falsch?
Viele Grüße,
Markus -
Schön, wenn man sich selber eine Lösung präsentieren kann
Ich muss in Grafana nur das Feld auf "Value" anstelle "Numeric" umstellen - dann geht es
-
So, jetzt habe ich doch noch eine Frage dazu: Wenn sich über den Zeitraum der Anzeigeeinstellung in Grafana (...last 6 hours...) der Wert nicht ändert bekomme ich ein "No data" angezeigt. Was muss ich einstellen, damit mit der letzte bekannte Wert (/Status) angezeigt wird?
from(bucket: "iobroker_0") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "usv_connection") |> filter(fn: (r) => r["_field"] == "value") |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false) |> yield(name: "last")
Viele Grüße,
Markus -
@markus-7
Das ist leider nicht ganz so einfach. So wie ich den Wert verstehe, könnte die letzte Änderung ja schon Tage oder Wochen zurückliegen, richtig? Grafana kann ja nur das verarbeiten, was die Influx-Query zurückliefert.Deshalb könntest du entweder den Timerange so stark vergrößern, dass du in jedem Fall die letzte Änderung erfasst, z.B. das letzte Jahr:
|> range(start: -1y)
Alternativ könntest Du vom InfluxDB-Adapter regelmäßig (auch identische) Werte schreiben lassen, z.B. alle 5 Stunden:
-
Ja, korrekt interpretiert, die letzten Änderungen der Werte (gerade so Sachen wie Verbindungsstück) können lange zurück liegen. Ich probiere mal den Timerange hoch zu setzen.