NEWS
Grafana Lücken am Anfang bzw am Ende einer Kurve
-
Hallo ich habe mehrere Temperatursensoren im Haus bei denen ich jeweils die Temperatur und den Taupunkt mit influxdb auslese und an Grafana weiterleite. Manchmal kommt es vor das am Ende oder auch am Anfang einer Kurve keine Verläufe angezeigt werden.
Kann mir da bitte jemand versuchen zu helfen?
-
@geesthachter zeig mal die entsprechenden query dazu
-
Hallo @crunchip, danke das du mir versuchst zu helfen.
Hier einer der Querys, die anderen sehen mit entsprechendem eigenen Datenpunkt identisch aus.
from(bucket: "Iobroker") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "sonoff.0.Temperaturfühler SHT31-8 Fernseher Wohnzimmer.SHT3X_DewPoint" or r["_measurement"] == "sonoff.0.Temperaturfühler SHT31-8 Fernseher Wohnzimmer.SHT3X_Temperature") |> filter(fn: (r) => r["_field"] == "value") |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false) |> yield(name: "mean")
Hier noch das was unter Query Inspectors steht.
code_from(bucket: "Iobroker") |> range(start: 2023-07-31T02:38:28.245Z, stop: 2023-07-31T08:38:28.245Z) |> filter(fn: (r) => r["_measurement"] == "sonoff.0.Temperaturfühler SHT31-8 Fernseher Wohnzimmer.SHT3X_DewPoint" or r["_measurement"] == "sonoff.0.Temperaturfühler SHT31-8 Fernseher Wohnzimmer.SHT3X_Temperature") |> filter(fn: (r) => r["_field"] == "value") |> aggregateWindow(every: 20s, fn: mean, createEmpty: false) |> yield(name: "mean")
code_Object traceId:undefined request:Object url:"api/ds/query?ds_type=influxdb&requestId=Q115" method:"POST" data:Object queries:Array[1] range:Object from:"1690771108245" to:"1690792708245" hideFromInspector:false response:Object results:Object A:Object
und hier noch ein paar Screenshots meiner Einstellungen
Gruß Björn
-
@geesthachter stell mal um von "mean" auf "last"
-
Danke @crunchip ,
Am Ende der Kurve wurden die Kurve dadurch jetzt bis ans Ende geschoben aber am Anfang der Kurve sieht es noch genauso aus wie vorher.Ups, zu früh gedreut:
jetzt geht die Kurve schon wieder nicht mehr bis ans Endecode_from(bucket: "Iobroker") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "sonoff.0.Temperaturfühler SHT31-2 Esszimmer.SHT3X_DewPoint" or r["_measurement"] == "sonoff.0.Temperaturfühler SHT31-2 Esszimmer.SHT3X_Temperature") |> filter(fn: (r) => r["_field"] == "value") |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false) |> yield(name: "last")
-
@crunchip , gerade noch mal neu aufgerufen und jetzt sieht es gut aus.
Ich danke dir -
Hallo @crunchip
ich verstehe es nicht, jetzt sieht das schon wieder so aus
hast du noch eine Idee woran es liegen könnte?
code_from(bucket: "Iobroker") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "sonoff.0.Temperaturfühler SHT31-2 Esszimmer.SHT3X_DewPoint" or r["_measurement"] == "sonoff.0.Temperaturfühler SHT31-2 Esszimmer.SHT3X_Temperature") |> filter(fn: (r) => r["_field"] == "value") |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false) |> yield(name: "last")
-
@geesthachter dir fehlt doch auch hier ein Wert, oder?
bzw einmal fehlt er oben, einmal unten -
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
|> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
Eine mögliche Ursache könnte sein, dass du zu viele Punkte gleichzeitig versuchst anzuzeigen und Grafana damit (Arbeitsspeicher-)Probleme bekommt. Ich würde zum Testen mal aus
|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
|> aggregateWindow(every: 1m, fn: mean, createEmpty: false)
machen. Oder ist dir echt an 20 Sekunden Messintervallen im Esszimmer gelegen???
-
@geesthachter said in Grafana Lücken am Anfang bzw am Ende einer Kurve:
Kann mir da bitte jemand versuchen zu helfen?
Reine Vermutung meinerseits (es fehlen die detaillierten Daten, die aufgezeichnet/gespeichert wurden):
Am Anfang und Ende gibt es für eine kurze Zeit keine Werte in der DB, da dort "gleiche" Werte waren.- Wie schaut denn die Konfig der Aufzeichnung dieser Datenpunkte aus?
- Ist "Nur Änderungen aufzeichnen" aktiv?
- Wie lange ist das Intervall für "Trotzdem gleiche Werte aufzeichnen".
Ich habe es mir angewöhnt, auch bei gleichen Messwerten in bestimmten sinnvollen Intervallen den Wert in die DB zu schreiben. Das hilft ungemein, immer einen Wert zu sehen. Und ja, am Anfang oder Ende fehlt evtl. ein kleines Stück. Könnte ich optimieren, wenn ich "Trotzdem gleiche Werte aufzeichnen" kleiner mache.
-
Hallo
zu @crunchip
Du hast recht es wird auch kein Wert angezeigt.Insgesamt überwache ich 9 Temperatursensoren, bis auf einen zeigten "jetzt" nach dem ich durch den Tipp von @crunchip,
bei allen von "mean" auf "last" geändert habe, am Ende der Kurve alles so an wie es sein soll.bei dem einen wo es nicht richtig angezeigt wird habe ich jetzt gesehen das schon bei InfluxDB keine Daten angezeigt werden.
Rufe ich den Temperatursensor aber direkt über die IP Adresse in der Tasmota Software auf werden dort die Werte alle angezeigt.Das heißt das das Problem vielleicht gar nicht im Grafana sondern schon bei InfluxDB entsteht.
zu @Marc Berg
Nein mir ist es nicht wichtig das alle 20 Sekunden gemessen wird.
Mir geht es darum das ich im Winter längere Zeit nicht im Hause bin und um Schimmelbildung zu vermeiden, ich darauf achten will das die Temperatur in den einzelnen Räumen nicht unter den Taupunkt fällt.
Wie oft wird denn abgefragt wenn ich es nach deinem Vorschlag auf |> aggregateWindow(every: 1m, fn: mean, createEmpty: false) ändere?
Bzw kann man die Zeitinterwalle irgendwo einstellen? Vielleicht unterschiedliche Sekundeninterwalle so das nie alle 9 Sensoren gleichzeitig abgefragt werden?zu @hans_999
seinen Fragen,
Wie schaut denn die Konfig der Aufzeichnung dieser Datenpunkte aus?
Ist "Nur Änderungen aufzeichnen" aktiv?
Wie lange ist das Intervall für "Trotzdem gleiche Werte aufzeichnen"?Das kann ich dir gar nicht beantworten. Ich fange gerade erst damit an mich mit I fluxDB und Grafana zu beschäftigen und weiß noch lange nicht wo ich was auslesen oder auch ändern kann. da würde ich mich dann über Hilfe sehr freuen.
Danke für Eure Hilfe
Gruß Björn -
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
weiß noch lange nicht wo ich was auslesen oder auch ändern kann
das sind die Einstellungen, wenn du das loggen(Influx) für einen Datenpunkt aktivierst
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
Bzw kann man die Zeitinterwalle irgendwo einstellen? Vielleicht unterschiedliche Sekundeninterwalle so das nie alle 9 Sensoren gleichzeitig abgefragt werden?
die senden ja nicht alle gleichzeitig, sondern nur wenn sich ein Wert ändert
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
Wie oft wird denn abgefragt
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
every: 1m
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
bei dem einen wo es nicht richtig angezeigt wird habe ich jetzt gesehen das schon bei InfluxDB keine Daten angezeigt werden.
ich kenne es von influxdb1.x, wenn man in iobroker beim loggen für influx den falschen Typ gewählt hatte und anschliessend ändert, wurde in Grafana nichts mehr angezeigt, weil dieser dann nicht mehr zugeordnet wurde.
-
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
Wie oft wird denn abgefragt wenn ich es nach deinem Vorschlag auf |> aggregateWindow(every: 1m, fn: mean, createEmpty: false) ändere?
Bzw kann man die Zeitinterwalle irgendwo einstellen? Vielleicht unterschiedliche Sekundeninterwalle so das nie alle 9 Sensoren gleichzeitig abgefragt werden?Mein Vorschlag hat mit dem Abfrageintervall nichts zu tun. Den Intervall definierst du im Grafana Dashboard. Der Wert sollte auch in der aufrufenden URL enthalten sein.
Mein Vorschlag ging in die Richtung, dass du pro Stunde nur noch 60 Werte darstellst, und nicht mehr 180, wie in deiner Einstellung. Das spart Grafana Arbeitsspeicher. Wenn das das Problem sein SOLLTE, bekommst du es so gelöst. Die Auflösung des Kurve wird nur etwas geringer.
-
@crunchip sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
weiß noch lange nicht wo ich was auslesen oder auch ändern kann
das sind die Einstellungen, wenn du das loggen(Influx) für einen Datenpunkt aktivierst
@crunchip
Das sind die Einstellungen die ich aktiviert habe, müsste ich da noch was ändern?
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
Bzw kann man die Zeitinterwalle irgendwo einstellen? Vielleicht unterschiedliche Sekundeninterwalle so das nie alle 9 Sensoren gleichzeitig abgefragt werden?
die senden ja nicht alle gleichzeitig, sondern nur wenn sich ein Wert ändert
Ah okay
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
Wie oft wird denn abgefragt
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
every: 1m
Danke jetzt sehe ich es auch
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
bei dem einen wo es nicht richtig angezeigt wird habe ich jetzt gesehen das schon bei InfluxDB keine Daten angezeigt werden.
ich kenne es von influxdb1.x, wenn man in iobroker beim loggen für influx den falschen Typ gewählt hatte und anschliessend ändert, wurde in Grafana nichts mehr angezeigt, weil dieser dann nicht mehr zugeordnet wurde.
-
Hier ein weiterer Screenshot von etwas später. Hier sieht man wie lange keine Daten erfasst wurden und wo es erneut abgebrochen ist.
-
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
Das sind die Einstellungen die ich aktiviert habe
nein, in deinem iobroker
-
@marc-berg
Danke für den Tipp. werde ich auch probieren. Im Moment sieht es aber erst einmal so aus als wen von InfluxDB gar keine Daten ankommen. -
@crunchip sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
Das sind die Einstellungen die ich aktiviert habe
nein, in deinem iobroker
Das sieht bei mir tatsächlich ganz anders aus.
Ich werde es deinem Beispiel angleichen
Danke
-
@geesthachter sagte in Grafana Lücken am Anfang bzw am Ende einer Kurve:
Das sieht bei mir tatsächlich ganz anders aus.
Das Zahnradsymbol vom entsprechenden Datenpunkt unter Objekte ist die Lösung
-
@djmarc75
Danke, habe es jetzt bei einem Sensor angepasst.Die anderen mache ich morgen, ich muss jetzt noch mal los.
Vielen Dank bis hierher an alle.