NEWS
Grafana Kurven addieren
-
@joergh
das sieht leider fast genau so aus. -
@ck76 Also ich sehe da jetzt mal grundsätzlich nicht, dass etwas falsch wäre. Wenn Du ein Problem mit der Quelle hast, weil die Daten asynchron eingehen, dann kann man das grafisch nicht heilen, sondern dann musst Du Deine Daten versuchen zu synchronisieren. Das hat mit Grafana dann aber nichts zu tun.
Woher kommen denn die Daten und wer bestimmt wann sie in der Influxdb abgelegt werden? Fragst Du die Daten aktiv ab oder werden die angeliefert?
-
@joergh
Die Daten kommen aus InfluxDB:
Soll ich noch screenshots von influxDB senden?
-
@ck76 Die Frage ist wie kommen sie rein (woher und wie oft)...und
wie sind denn die Einstellungen Deiner Queries, bitte?
-
@joergh
Ich habe homeassisstant auf einem rpi4 laufen.
Hier kommen die Daten aus dem solarlog und dem Zweirichtungszähler an.
Diese werden in influxDB gesammelt und mit grafana ausgelesen. -
@ck76 Wenn Du schreibst die Daten kommen asynchron an und werden deshalb falsch addiert, dann passt da was nicht zusammen. Wenn eine 0 addiert wird, dann muss die 0 ja auch in der db stehen, oder woher soll er die haben?
Wer schreibt die Daten wann und welche genau in die db?
Zeig doch mal die Daten die Probleme machen in der Addition in Tabellenform. Dann musst Du doch sehen können ob da 0 auftaucht und wenn, dann ist das Schreiben Deiner Daten das Problem, nicht die Addition in Grafana. -
@joergh
Dass die Daten asynchron sind, sieht man an dem Bild:
Wahrscienlich sendet der Zweirichtungszähler und der Solarlog die Daten nicht zum gleichen zeitpunkt.
Stellt ich mir die Frage ob man die Daten in influxDB synchronisieren kann?
Oder ob sowas vielleicht auch in Grafana geht? -
@ck76 Das ist eigentlich nahezu nie der Fall, dass die Daten exakt zum gleichen Zeitpunkt geschrieben werden, ist physikalisch ja auch nicht möglich.
Wenn man einstellt, dass er einen Wert bilden soll aus den letzten beiden Daten, dann macht er das, egal ob die 100% gleichzeitig geschrieben wurden. Hast Du natürlich "falsche Werte" wie "0" dabei, dann führt das zu falschen Ergebnissen.
Wenn die Daten sehr selten geschrieben werden oder sehr stark fluktuieren, dann wird es irgendwann sicherlich zu Ungenauigkeiten führen, die zu groß werden. Da eine Regelung des Stromes zum E-Auto laden etc. aber sowieso nicht im ms Takt funktionieren wird, spielt das aber eigentlich meist keine Rolle. Man kann sich nur annähern. Was willst Du Denn machen? -
@ck76 sagte in Grafana Kurven addieren:
Wahrscienlich sendet der Zweirichtungszähler und der Solarlog die Daten nicht zum gleichen zeitpunkt.
Stellt ich mir die Frage ob man die Daten in influxDB synchronisieren kann?
Oder ob sowas vielleicht auch in Grafana geht?Wie soll er die synchronisieren? Die wurden doch zu unterschiedlichen Zeitpunkten gemessen. Wenn Du "mean" nimmst, dann nimmt er ja alle Werte in dem Zeitintervall welches Du bei Grafana eingestellt hast und mittelt die, was einer "Annäherung" der Zeitpunkte ja entspricht. Nimmst Du "last", dann nimmt er halt die letzten Werte der db. Genauer als die Eingangswerte kann er aber nicht werden. Wie gesagt ich verstehe noch nicht genau das Problem welches Du hast und was das mit den "0" Werten auf sich hat?
-
@joergh
Wie du an dem Bild erkennen kannst, sind die Werte um ein paar Sekunden verschoben.
Die blauen Lininen sind die Addition. Da die Werte nicht zur gleichen Zeit vorliegen entspricht die Addition immer dem einen Graphen der gerade dran ist.Der Zweirichtungszähler zeigt immer nur an was gerade zum Netz hin passiert. Beziehe ich Strom, oder speise ich ein.
Ich wolte aber sehen, welcher Strom gerade im Haus verbarucht wird, das könnte ich sehen wenn ich die beiden Werte addiere.
-
@ck76 sagte in Grafana Kurven addieren:
@joergh
Wie du an dem Bild erkennen kannst, sind die Werte um ein paar Sekunden verschoben.
Die blauen Lininen sind die Addition. Da die Werte nicht zur gleichen Zeit vorliegen entspricht die Addition immer dem einen Graphen der gerade dran ist.Der Zweirichtungszähler zeigt immer nur an was gerade zum Netz hin passiert. Beziehe ich Strom, oder speise ich ein.
Ich wolte aber sehen, welcher Strom gerade im Haus verbarucht wird, das könnte ich sehen wenn ich die beiden Werte addiere.
Das verstehe ich und ist ja auch korrekt. Eine Verzögerung um ein paar Sekunden ist da sicherlich vernachlässigbar. Wenn der Wert nur einem der beiden Werte entspricht, dann ist was faul, weil das bedeutet, dass er einen Wert "0" für den zweiten Wert annimmt. Ich hatte je bereits schon einmal gefragt was er denn für Werte anzeigt wenn du auf Tabelle umschaltest, da kann man dann sehen welche Werte er in der db stehen hat...
-
@joergh
wo schalte ich das um?
Könnte es sein, dass ich ggfs. bei "group by" was ändern muss?
-
-
@joergh
Das war die Lösung!!!!
Habe die group by auf 1m eingestellt. Jetzt liegend die Daten an der gleichen Zeit vor und die Addition funktioniert.
Danke für die Hilfe.
-
@ck76 Ich würde die auf time($_interval) lassen und dann über die Query options bei Interval 1 m oder wie oft auch immer Deine Daten vorliegen, einstellen. Dann kannst Du die Grafen auch immer leicht umstellen wenn Du andere Zeiträume sehen willst.
-
@joergh
Wo müsste ich da im Detail, was ändern? -
Hier kannst das Interval ändern für alle Queries und beim Minimum Intervall kannste Dein Minimum (um beide Messungen stets dabei zu haben) einstellen.
-
@joergh
DAs kann ich nicht ändern. -
@ck76 Trag einen Wert in Min interval ein...z.b. 30s oder 1m
-
@joergh Das geht. Danke.
Was ist jetzt genau der Vorteil davon?