Ankündigung

Einklappen
Keine Ankündigung bisher.

RRD für Uhrzeit

Einklappen
Dieses Thema ist geschlossen.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    [wiregate] RRD für Uhrzeit

    Hallo,

    ich würde gern ein rrd anlegen in dem ich je Tag eine Uhrzeit protokollieren möchte um dann später eine entsprechende Kurve über mehrere Tage/Wochen anzuzeigen. Ich möchte dazu Frys Logikprozessor und die update_rrd-Funktion benutzen. Allerdings bin ich momentan etwas ratlos wie ich dies am besten anstelle. Brauche ich dazu einen bestimmten DPT? In welchem Format soll ich die Uhrzeit speichern? Ist es sinnvoll die Uhrzeit (also den eigentlichen Wert im rrd) immer zur selben Zeit zu speichern?

    Wie gesagt: ich bin momentan noch sehr unsicher wie ich das Thema angehen soll und würde mich über Ideen & Hinweise freuen.

    Danke,
    Micha

    #2
    Hallo Micha,

    vermutlich ist es einfacher Dir zu helfen, wenn Du uns den Sinn sagst, weil mein Gehirn weigert sich nachzudenken, solange ich mich frage "Wofür will man eine zeitliche Abfolge von Uhrzeiten aufzeichnen"? Die Uhrzeit ist bereits eine zeitliche Abfolge und diese in Beziehung zur (gleichen ) zeitlichen Abfolge zu setzen ergibt eine Gerade.....

    Kannst DU bitte den Knoten im Gehirn auflösen?

    Stefan

    Kommentar


      #3
      Hi,

      ich vermute er will protokollieren wann ein bestimmtes Ereignis was auch immer stattgefunden hat.

      VG
      Jürgen

      Kommentar


        #4
        Je nach Genauigkeit könnte man Werte von 0,00 bis 23,59 vergeben. Diese können ja die Uhrzeit wiederspiegeln und man ein einfaches schönes Chart.
        Lediglich eine Logik muss beim Event die Zeit errechnen und das RRD muss richtig! angelegt werden.
        Umgezogen? Ja! ... Fertig? Nein!
        Baustelle 2.0 !

        Kommentar


          #5
          Ja, genau darum geht es: jeden Tag geschieht ein Event (einfaches Beispiel: Sonnenaufgang). Das Event kommt jeden Tag genau 1x, aber jeden Tag zu einer anderen Uhrzeit. Diese Uhrzeit (und den Verlauf über die letzten x Tage/Wochen) möchte ich protokollieren und in einem Diagramm anzeigen. Das Event ist technisch gesehen einfach ein bestimmter Wert auf einer GA und existiert bereits.

          Die Idee mit Floats (von 0,00 bis 23,59) zu arbeiten klingt eigentlich gut. Wie müsste ich das rrd dafür initialisieren? Und: Sollte ich dann den jeweiligen Tageswert immer zur selben Zeit (zB 12:00 Uhr) in das RRD schreiben oder ist es ausreichend wenn ich es immer zum (variierenden) Zeitpunkt des Auftretens schreibe?

          Danke,
          Micha

          Kommentar


            #6
            Da hilft dir die rrd-doku. Die wichtigsten Stichworte sind heartbeat und step.

            RRDtool - rrdcreate

            Step wäre dann ein Tag (86400s) und den Heartbeat würde ich auf 2 Tage (172800s) setzen.
            Umgezogen? Ja! ... Fertig? Nein!
            Baustelle 2.0 !

            Kommentar


              #7
              Hallo
              Warum so umständlich, einfach einen Wert für Ein und Aus mit Hilfe des "rrd_graph.pl" Plugin eintragen.
              In der CV kannst Du dir dann die Zeiten ansehen.
              Gruß NetFritz
              KNX & Wago 750-849 ,Wiregate u. Cometvisu, iPad 3G 64GB.
              WP Alpha-Innotec WWC130HX (RS232-Moxa-LAN),Solaranlage für Brauchwasser und Heizung.
              PV-Anlage = SMA Webbox2.0 , SunnyBoy 4000TL, Sharp 4kWP

              Kommentar


                #8
                Zitat von JuMi2006 Beitrag anzeigen
                Da hilft dir die rrd-doku. Die wichtigsten Stichworte sind heartbeat und step.

                RRDtool - rrdcreate

                Step wäre dann ein Tag (86400s) und den Heartbeat würde ich auf 2 Tage (172800s) setzen.
                Danke dafür. Das habe ich mal probiert & recherchiert und bin zu folgendem gekommen:
                Code:
                rrdtool create /var/www/rrd/wetterStationDaemmerungMorgens.rrd -s 86400s DS:value:GAUGE:172800:0:24 RRA:LAST:0:1:797
                1x am Tag schreibe ich einen Wert in das rrd. Hier die Ausgabe von "rrdtool info":
                Code:
                user@wiregate:/var/www/rrd$ rrdtool info wetterStationDaemmerungMorgens.rrd
                filename = "wetterStationDaemmerungMorgens.rrd"
                rrd_version = "0003"
                step = 86400
                last_update = 1420270258
                ds[value].type = "GAUGE"
                ds[value].minimal_heartbeat = 172800
                ds[value].min = 0,0000000000e+00
                ds[value].max = 2,4000000000e+01
                ds[value].last_ds = "8.30"
                ds[value].value = 2,2458476704e+05
                ds[value].unknown_sec = 0
                rra[0].cf = "LAST"
                rra[0].rows = 797
                rra[0].cur_row = 731
                rra[0].pdp_per_row = 1
                rra[0].xff = 0,0000000000e+00
                rra[0].cdp_prep[0].value = NaN
                rra[0].cdp_prep[0].unknown_datapoints = 0
                Ich glaube rauslesen zu können, dass der letzte Wert "8.30" (steht für 08:30 Uhr) drin steht. Allerdings bekomme ich keinen Graphen angezeigt wenn ich das rrd in http://wiregate:10000/wiregate/graph2.cgi auswähle. Stattdessen bekomme ich folgendes zu sehen: siehe Anhang.

                Jemand eine Idee? Liegt es an "RRA:LAST"?

                Danke
                Micha
                Angehängte Dateien

                Kommentar


                  #9
                  Ich habe den Eindruck da passt etwas mit dem Datenformat nicht. Der letzte übergebene Wert dürfte eher "ds[value].value = 2,2458476704e+05" sein. Womit schaufelst du die Werte ins RRD?
                  Mir ist gerade noch aufgefallen, dass alle Werte aus dem RRD Komma Dezimaltrennzeichen haben. Deine Uhrzeit hat einen Punkt, deutet für mich darauf hin, das das nicht als Zahl interpretiert wurde.
                  Endlich umgezogen. Fertig? Noch lange nicht... ;-)

                  Kommentar


                    #10
                    Mit rrdtool fetch sollte man sich auch die Datenreihen anzeigen lassen können.
                    Vielleicht hilft das bei der Fehlersuche.
                    Umgezogen? Ja! ... Fertig? Nein!
                    Baustelle 2.0 !

                    Kommentar


                      #11
                      Zitat von mivola Beitrag anzeigen
                      Allerdings bekomme ich keinen Graphen angezeigt wenn ich das rrd in http://wiregate:10000/wiregate/graph2.cgi auswähle. Stattdessen bekomme ich folgendes zu sehen: siehe Anhang.

                      Jemand eine Idee? Liegt es an "RRA:LAST"?
                      Ich weiß nicht warum, aber nun funktioniert es. Wahrscheinlich war ich mal wieder einfach unfähig...

                      Zum Thema Diagramme in der CV gibt es hier jede Menge (neue) Möglichkeiten: https://knx-user-forum.de/cometvisu/...ssieren-4.html
                      Inkl. Angabe des RRA und der CF (ConsolidationFunction): <rrd datasourceIndex="0" consolidationFunction="LAST" yaxis="Load" color="red" >customRRD</rrd>

                      VG
                      Micha

                      Kommentar

                      Lädt...
                      X