NEWS
Erfahrungsbericht influxDB und Grafana
-
Seit ein paar Tagen habe ich versucht, die hochgelobte Kombination influxDB und Grafana zu nutzen. Hier ein paar Erfahrungen.
Ich habe noch die "alte" Version von influxDB 1.8 installiert.
Am Anfang bekommt man super schnell an beeindruckende Grafiken und es gibt eine reichhaltige Auswahl an Darstellungsoptionen. Das sieht man auch in den ganzen Youtube Videos. Die Queries werden dabei mit der SQL artigen Query Language durchgeführt und die wird auch im Grafana UI sehr gut unterstützt.
Nach einer Weile habe ich aber bemerkt, dass die angezeigten Werte gar nicht stimmen und ich habe dann Stunden benötigt, um zu verstehen, was da überhaupt passiert. Natürlich habe ich bei meinem Diagrammen und Javascripten Aggregationsfunktionen benutzt. Diese benötigen immer ein Zeitfenster. Diese Zeitfenster werden leider mit einem ziemlich schrägen Algorithmus ermittelt und benutzen sogenannten "Preset Time Boundaries". In der originalen Dokumentation InfluxDB wird auch nicht vernünftig erklärt, was die "Preset Time Boundaries" überhaupt sind. Wer das wissen will, kann die Details unter
https://www.fromkk.com/posts/time-boundary-in-influxdb-group-by-time-statement/
nachlesen.Die Konsequenz ist, dass die Aggregation insbesondere bei längeren Fenstern (1y) nicht korrekt funktionieren. Sprich, wenn man nicht nur ein paar Sekunden, Minuten aggregieren möchte, kann man den Ansatz vergessen.
Ich hoffe nur, dass unsere Klimaforscher, die Kombination nicht verwenden, da sind schnell mal ein paar Grad Celsius im Mittelwert falsch ausgerechnet.Dann habe ich die neue Alternative "Flux" ausprobiert. Flux hat vernünftige Zeitfenster, gibt die Ergebnisse aber immer mit dem Timestamp des Ende des Zeitfensters aus, was in der Darstellung in Grafana z.B. bei einer Jahresauswertung, die Ergebnisse immer dem folgenden Jahr zugeordnet. Aber im Prinzip geht es.
Was aber auch ziemlich nervt, ist die allgemeine Stabilität der Kombination von influxDB 1.8 und Flux. Das geht zwar im Prinzip, führt aber ab und zu zu unangenehmen Abstürzen, die meinen gesamten Linux Rechner unansprechbar gemachten haben. Ping ging noch, SSH nicht mehr. Vermutlich wurde die Kombination aus der alten influxDB mit Flux nie vernünftig getestet. Also Vorsicht. Lieber in einem Docker installieren, ob vielleicht überhaupt nicht nutzen.
Ob das mit der influxDB 2.x, bei der Flux die einzige Query Language ist, besser ist, weiß ich nicht. Wenn da einer Erfahrung hat, wäre ich daran interessiert.
-
@marty56 Also ich nutze auch influxDB in der Version < 2.0 und habe keine Probleme. Das Aggregieren überlasse ich allerdings Grafana, meine Queries sind also relativ clean und ich habe mich nicht mit flux/sql Aggregierung auseinander setzen müssen. Ist sicherlich mal einen Versuch wert
-
@marty56 said in Erfahrungsbericht influxDB und Grafana:
Am Anfang bekommt man super schnell an beeindruckende Grafiken und es gibt eine reichhaltige Auswahl an Darstellungsoptionen. .. Nach einer Weile habe ich aber bemerkt, dass die angezeigten Werte gar nicht stimmen .. Diese Zeitfenster werden leider mit einem ziemlich schrägen Algorithmus ermittelt und benutzen sogenannten "Preset Time Boundaries". In der originalen Dokumentation InfluxDB wird auch nicht vernünftig erklärt, was die "Preset Time Boundari
Du sprichst mir mit jedem Wort aus der Seele.
Wer genau hinschaut, versteht immer weniger. Tolle Aufmachung, aber im Detail bleibt vieles oft unverständlich und es dauert nicht Stunden, sondern Tage (ich bin halt wohl zu dumm dazu), um trotz guter Kenntnisse in SQL mich einzuarbeiten. Sei's d'rum! Ich nutze InfluxDB und Grafana glücklicherweise bloß privat. Und um die komischen Zeitfenster nicht zu verwenden, wähle ich - mich leidlich sicher wähnend - halt distinct in den Aggregationsoptionen.
Aber ich scheitere bereits auch an einfachen, alltäglichen Dingen in Sachen Bedienung. Mir will sich trotz ewig langem Herumprobieren erschließen, wie ich Verzeichnisse umbenennen kann.
Auszug aus der Dokumentation
.. you reach the dashboard folder page by clicking on the cog icon that appears when you hover over a folder in the dashboard list in the search result or on the Manage dashboards page. ..Bei mir erscheint jedoch kein Zahnradsymbol (oder was auch immer mit cog icon gemeint sein mag), wenn ich mit dem Cursor über ein Verzeichnis(namen) in einer solchen Liste drüberfahre.
Weiß jemand, was ich da falsch mache oder nicht verstanden habe?
Wenn ich den Cursor in der mit Manage erzeugten Liste über das Verzeichnis Geräte positioniere geschieht schlichtweg nichts. -
Ich habe mittlerweile diese Flux Query enabled. Über kurz oder lang, wird man die ja ohnehin lernen müssen, bei influxdb 2 nur noch Flux unterstützt.
Aber mit Flux funktionieren die Zeitfenster vernünftig und bei "y" und "m" werden die Fenster korrekt gewählt. Insofern bleibt einem wohl nichts anderes übrig, als Flux zu lernen oder auf Grafana mittelfristig zu verzichten.
Ich probiere auch gerade den echarts Adapter. Ist zwar nicht so mächtig, aber scheint für meine Bedürfnisse auch sehr gut zu passen.
-
Ich habe influx 1.8 und influx 2.2 auf 2 verschiedenen Raspberry PI installiert. Jeweils Grafana drauf. Alles Standalone ohne iobroker. Ich lerne grad beide, bin aber tatsächlich in der 2.2 schon weiter weil man da ja ganz easy Dashboards oder Panels erstellen kann und diese dann per copy und paste in Grafana importieren kann. Dort ist das Ganze dann ja wie bei 1.8 einfach grafisch zu konfigurieren. In der VIS nutze ich allerdings noch die 1.8 Daten. Aber, zugegeben, ist die Programmierung rein über Flux (in Grafana) schon recht kompliziert. Deshalb - learning by doing !
Es macht Spass ! -
Leider gab's keine Antwort auf meine Frage, wo und wie ich Verzeichnisse umbenennen kann. So musste ich mich wohl oder übel selbst auf den Weg machen und fand nach schier endlosem Suchen dies ..
Über die Option Manage ..
.. gelangt man zu ..
.. und klickt dort auf Go to Folder.
In dem sich öffnenden Dialog ..
.. wählt man Settings, woraufhin man in diesem Register ..
.. schließlich und endlich den gewünschten Namen für das Verzeichnis ändern kann.