Ankündigung

Einklappen
Keine Ankündigung bisher.

InfluxDB / Grafana

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    InfluxDB / Grafana

    Hi zusammen,

    es gibt ja schon einen LBS um Daten in eine InfluxDB zu schießen...
    Wie habt ihr die Daten dann visualisiert?
    Ich denke Grafan macht da Sinn aber ich hab mit beidem noch nicht viel praktisch gemacht...
    Kann ich so ein Grafana Diagram einfach per URL/Website Element in die Visu einbauen?
    Wie kann ich dann interagieren und z.B. Zeitbereiche im Diagram ändern?

    Hintergrund ist das auch ich wie andere Daten aus meiner PV Anlage und Heizung mit logge aber gerade bei der PV von der Daten in hoher Frequenz kommen bekomme ich mit den eingebauten Diagrammen Probleme. Ich denke es liegt an der Datenmenge und daran das die Diagramme wohl auf den Client ausgewerted und gerendert werden.
    Mein Ipad schmiert dabei reproduzierbar ab und unter Windows bekommen ich nach ca 10s ein Diagramm und Edomi läuft mit 100% CPU Last und Warnung...

    Deshalb denke ich das diese Massendaten besser in eine externe DB gehen sollten.

    Wenn da jemand schon Erfahrungswerte hätte würde mir das erheblich Zeit sparen
    Gruß
    Michael

    #2
    Ich hab mal ein wenig damit gespielt... aber nicht wirklich viel... weil es mich dann doch nicht überzeugt hat..
    also das Zusammenspiel hat mich nicht überzeugt.. Grafana find ich bis heute immer noch genial...

    Man muss im GF den anonymen Zugriff zulassen.. dann kann man das mit einem Webelement in
    Edomi anzeigen lassen, ohne sich anmelden zu müssen... aber so ganz hat mir das nie gefallen..
    vom Design her... hätte man sicher anpassen können... war mir das dann aber doch nicht wert..

    Mit etwas Energie bekommt man das aber schon hin...

    Gruß Martin
    Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

    Kommentar


      #3
      Geht mir genau so.
      Ich benutze Grafana im wesentlichen wenn ich mir die "Rohdaten" anschauen will. Z.b. um zu schauen ob mit der Heizung alles in Ordnung ist. Diagramme habe ich noch keine in der Visu.

      Kommentar


        #4
        Ich logge seit 2013 meine KNX Daten, bis vor kurzem zu Splunk und neuerdings in einen Elasticsearch Stack. Die internen und KNX-KO werden per mittels Filebeat direkt vom Log File an den Elasticsearch Server übergeben und stehen dort zum Analysieren und Visualisieren zur Verfügung. Die Visualisierung wiederum lässt sich als iFrame überall einbinden. Man kann aber auch die Daten von Elasticsearch extern abfragen, da scheint mir Grafana (sehe es gerade zum ersten Mal) einen Blick wert.

        Kommentar


          #5
          Ich hatte mich auch mal eine Zeit lang mit InfluxDB und Grafana unter SmarthomeNG beschäftigt. Die Möglichkeiten, die das System bietet sind sehr mächtig und vielleicht recht hilfreich zu Debugzwecken. Wenn es einen LBS für ein Schreiben der Daten in eine InfluxDB geben würde, wäre das natürlich sehr gut. Alles was über die Anzeigemöglichkeiten von Diagramm unter Edomi hinausgeht, kann dann sicherlich mit Grafana dargestellt werden. So "muss" Gaert nicht nochmal ran, wenn jemandem die Darstellungen der Diagramme nicht zusagen. Ehrlich gesagt, hat mir das bisher schon ein wenig gefehlt bei Edomi, konnte mich aber behelfen, da das ganze bei mir unter SmarthomeNG auf einem RPi läuft. Leider fehlt mir die Zeit, einen LBS zu erstellen. Es gibt aber einige hier, die sehr fit im Erstellen von LBS sind und für die es vermutlich eine Kleinigkeit ist, einen LBS für eine InfluxDB zu erstellen. Vielleicht folgendes als Anregung:
          https://docs.influxdata.com/influxdb.../writing_data/

          Kommentar


            #6
            Hier findest du einen InfluxDB LBS: http://service.knx-user-forum.de/?co...ad&id=19000398

            Kommentar


              #7
              Perfekt. Vielen Dank

              Kommentar


                #8
                Danke für das viele Feedback und die Anregungen!

                Ich denke das die Daten bei mir in InfluxDB gehen werden.
                Worin ich mir noch nicht sicher bin ist was ich mit der Visu und Grafana machen...
                Wenn ich es richtig verstanden habe ist ja das URL Element mit absicht "geblockt" sodas man die Website dahinter nicht bedienen kann.

                Muss mich mal am Wochenende damit beschäftigen...
                Gruß
                Michael

                Kommentar


                  #9
                  Ich habe Grafana Daten als Bilder und als URL eingefügt. In der Ansicht gibt es keine Unterschiede. Man kann aus Grafana raus ja sehr gut die Diagramme teilen. Es gibt da nur ein arges Problem:
                  Wenn ich mit Edomi ein Bild oder eine URL einbinde, wird ein php-code-Schnipsel (oder wie man das auch nennt) an die URL mit angehangen. Hat man nun als letzen Parameter die auflösung in der URL des Grafana Graphen, wird dieser Wert zerrockt und die Grafik sieht Sch***** aus. Ändert man die Reihenfolge der Parameter klappt das ganz gut und es sieht klasse aus.

                  Sobald ich heute abend zuhause bin kann ich den entsprechenden Link mal hier hochladen.

                  Kommentar


                    #10
                    So hab jetzt mal den LBS von panzaeron für meine Bedürftnisse erweitert.
                    LBS 19001034 InfluxDB Batch Writer
                    Damit können mehrere Werte auf einmal geschrieben werden, Https wird unterstützt und ich kann auch das Line Protocol nutzten.

                    Grafana hab ich auch Problemlos per URL-Element eingebunden bekommen und kann auch damit interagieren!
                    Zuletzt geändert von gulp2k; 25.03.2017, 21:07.
                    Gruß
                    Michael

                    Kommentar


                      #11
                      Zitat von Pendragon Beitrag anzeigen
                      Ich habe Grafana Daten als Bilder und als URL eingefügt. In der Ansicht gibt es keine Unterschiede. Man kann aus Grafana raus ja sehr gut die Diagramme teilen. Es gibt da nur ein arges Problem:
                      Wenn ich mit Edomi ein Bild oder eine URL einbinde, wird ein php-code-Schnipsel (oder wie man das auch nennt) an die URL mit angehangen. Hat man nun als letzen Parameter die auflösung in der URL des Grafana Graphen, wird dieser Wert zerrockt und die Grafik sieht Sch***** aus. Ändert man die Reihenfolge der Parameter klappt das ganz gut und es sieht klasse aus.

                      Sobald ich heute abend zuhause bin kann ich den entsprechenden Link mal hier hochladen.
                      Kannst Du bitte kurz schreiben, wie Du Grafana Grafiken in Edomi eingefügt hast? Ich stehe hier scheinbar irgendwie auf dem Schlauch.
                      Danke vorab.

                      Kommentar


                        #12
                        Ich muss mir wirklich Erinnerungen einstellen Sowas abends zu machen...
                        Die Lösung war glaube ich den Parameter der Auflösung nicht an das Ende zu setzten sondern davor

                        Hier der Code für den Graphen:
                        Code:
                        http://192.168.0.100:3000/render/dashboard-solo/db/goebenstrasse?from=now-48h&to=now&width=650&height=350&panelId=2
                        Zuletzt geändert von Pendragon; 08.09.2017, 15:04. Grund: Link hinzugefügt

                        Kommentar


                          #13
                          Zitat von gulp2k Beitrag anzeigen
                          So hab jetzt mal den LBS von panzaeron für meine Bedürftnisse erweitert.
                          LBS 19001034 InfluxDB Batch Writer
                          Damit können mehrere Werte auf einmal geschrieben werden, Https wird unterstützt und ich kann auch das Line Protocol nutzten.

                          Grafana hab ich auch Problemlos per URL-Element eingebunden bekommen und kann auch damit interagieren!
                          Hallo Michael,
                          klasse LBS, danke!

                          4 Dinge schlage für eine Update vor:
                          • Dein Baustein lässt derzeit kein Schreiben von Null-Werten zu. Korrektur
                            if ($E[$i]['value'] && $E[$i+1]['value']!='' && $E[$i+3]['value']){
                            in dem code-Block
                          PHP-Code:
                          ...
                          $data="";
                          for(
                          $i 10$i 45$i=$i+4) {
                          if (
                          $E[$i]['value'] && $E[$i+1]['value'] && $E[$i+3]['value']){
                          ... 
                          • String-Werte (z.B. aus der Fritzbox "Connected") kann der LBS nicht schreiben, weil influxDB die delimitted erwartet. Natürlich kann man das mit einem vorgelagerten LBS machen Doch schlage ich Dir folgende Automatik vor, die bei mir bislang wunderbar funktioniert und sauber unterscheidet. Man könnte das auch noch auf einen zusätzlichen EIngang schaltbar machen, z.B. "Auto-Delimiter String". Direkt anschließend zum obigen Code-Block funktioniert bei mir:
                          PHP-Code:
                          ...
                                      
                          $switch 1;   // könnte man auf einen E legen für "Auto-Delimiter String"
                                      
                          if ($switch==&& is_numeric($E[$i+1]['value'])==false) {
                                          
                          $data.=$E[$i]['value'] . ($E[$i+2]['value'] ? ",".$E[$i+2]['value'] : "") . " "$E[$i+3]['value']."=".'"'.$E[$i+1]['value'].'"'."\n";
                                      } else {
                                          
                          $data.=$E[$i]['value'] . ($E[$i+2]['value'] ? ",".$E[$i+2]['value'] : "") . " "$E[$i+3]['value']."=".$E[$i+1]['value']."\n";
                                      }
                          ... 
                          • Es wäre sinnvoll, die precision mit setzen zu können. Ich hab' mir das mal hart codiert, aber noch besser wär's auf einem weiteren Eingang; entweder genau nur für precision (dann würde man z.B. den Eingang mit "s" belegen für sekündlich) oder als freier URL-Append (dann würde man den Eingang z.B. mit "&precision=s") (vor-)belegen und könnte das auch für andere Parameter flexibel nutzen.
                          PHP-Code:
                          ...
                          $url $protocol."://$host:$port/write?db=$db_name&precision=s";
                          ... 
                          • Nur Wunsch, kein echtes Thema: Îrgendwie habe ich mehrerer Fälle, wo ich 11 Werte schreiben wollte, nicht nur die verfügbaren 10 - vermutlich weil ich stets als erstes einen Status des "Device OK" voranstelle mit 0 oer 1, um in grafana auf einen Blick zu sehen, wenn ein Gerät down ist und dann meist dazu eine gerade Anzahl Werte. Also wenn Du ohnehin dran wärst gelegentlich und erweitern magst...kann ich aber für mich auch selbe rmachen...

                          Viele Grüße,
                          Carsten

                          Kommentar


                            #14
                            Hallo Carsten,

                            interessantes Thema mit influxdb und Grafana. Hatte ich mal aufm RPi laufen.
                            Kannst Du mal einen Scrennshot eines Deiner Diagramme ranhängen?
                            Gibts Performanceunterschiede zu den Diagrammen erstellt von Edomi?

                            Gruß

                            Kommentar


                              #15
                              Okay, ein paar Gedanken dazu also...

                              Habe bislang noch nicht versucht, die Diagramme in eodmi einzubinden. Mir geht es auch weniger um ein entweder-oder, sondern sehe Grafana für einen anderen Zweck als edomi - die sich wunderbar ergänzen. Grundsätzlich sind die Diagramme spürbar schneller als in edomi bei großen Datenmengen. Ich baue influxDB derzeit als "Langzeit-Datengrab" auf - dafür ist es gemacht. Quellen sind telegraf (alle Server, alle Dienste, Docker, SNMP z.B. MikroTik,NUT,...) und edomi (FritzBox, 1-wire, SMA/gesamter Energie-Krams,...) - je nach dem, was einfach er ist oder wo ich die Daten schon habe. In Abgrenzung sehe ich die edomi-Diagramme und Archive eher für jüngere und für eine visu sinnvolle Daten, die ich in der Visu direkt sehen will. Mit großen Datenarchiven hatte ich meine Last in edomi mit langen Aktivierungszeiten; was ich nicht edomi vorwerfe, sondern meiner damaligen falschen Planung (zu viel unnötige Daten!). Für tiefe oder weitreichende Analysen rufe ich grafana auf und will dort auch bewusst "viel zu viel", werde aber noch rententions einrichten, um mich dort auch vor Ungemach zu bewahren.... Plan ist, auch relevante, aufbereiteten Stati meiner Infrastruktur per MQTT auch in Richtung eodmi verfügbar zu machen für die Visu ("laufen alle Server im grünen Bereich", aber ohne Details). Kurz: edomi kürzer und selektiver, influxDB langzeit und erheblich umfassender.

                              Dies für drei Schwerpunkt: Status-Infrastruktur, nach dem ich mit Icinga2 einfach nicht glücklich wurde, um den Staus zu monitoren und mit Alerts versorgt zu werden. In letzter Zeit hatte ich ein paar Ausfälle, die ich aus der Ferne (Hotel/Kunde) gerne erkannt und analysiert hätte. Haus mit allen Messwerten und sinnvollen Stellwerten. PV und Energie (um mich z.B. von der SMA-Cloud weniger abhängig zu machen).

                              Ist noch alles im Aufbau, meine influxDB und grafana-Container sind erst 2 Wochen alt, nun "fräse" ich mich von WAN über DMZ in meine LAN/VLAN durch alles mit IP. Wenn man influxDB und grafana richtig nutzen will, macht es recht viel Arbeit anfang, die Felder der Quellen sinnvoll auf die gleichen Metriken und Werte zu mappen, z.B. von telegraf out.of-the-box und SNMP. Aber nur dann kann man später generische Diagramme machen und muss nicht für alles eine eigenes machen.

                              Da mein edomi-Design seit Anfang an in anthrazit gebaut ist, sehen die Diagramme auch recht ähnlich aus, habe aber noch keine zur Hand, die hier Sinn ergeben für einen Vergleich. Mache auch Lernkurve in InfluxDB und grafana... Aber für einen Eindruck zu Grafana gibt es genug Bilder im WWW und zu edomi hier...

                              Für meine geschilderte Architektur ist der LBS von Michael ein wichtiger Baustein.
                              Zuletzt geändert von saegefisch; 03.05.2019, 23:50.

                              Kommentar

                              Lädt...
                              X