Ankündigung

Einklappen
Keine Ankündigung bisher.

Persistence für Switch item

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

    Persistence für Switch item

    Hallo
    Ich würde gerne die zustände einiger Schalter "Loggen" Dafür verwende ich Persistence rrd4j
    Nur merkwürdiger weise werden die Graphen dafür sehr verzögert angezeigt.
    Die kurve endet immer mindestens 30 Minuten vor der aktuellen zeit. teilweise sogar viele Stunden.
    Warum könnte das so sein?
    Andere werte zb. Temperaturen werden sehr exakt geloggt und auch ordentlich dargestellt.
    Die Switch items habe ich auch schon als Integer variable gekennzeichnet aber das ändert auch
    nix an dem Verhalten.

    Woran könnte das liegen? Wie könnte man besser schnell sichtbar machen wann Schalter an waren?



    #2
    Wie sieht die Konfiguration des Items aus?

    Kommentar


      #3
      Switch Network_Handy "Handy [%d]" (Status) { nh="192.168.1.234" }
      Switch Network_Tv "Tv wz" (Status) { nh="192.168.1.201" }

      Selbst wenn ich das Binding raus nehme bleiben die Daten im Persistance sehr unregelmäßig und verzögert.
      Network Handy ist integer Tv nicht weil ich vergleichen wollte ob es daran liegt. Eine Auswirkung kann ich aber
      nicht feststellen.


      Kommentar


        #4
        Solange die Items vom Typ Switch sind, wird der Status ebenfalls vom Typ Switch sein (nee, der heißt anders, aber egal...) also ON, OFF oder (je nach Versionsstand) null/uninitialized. Diese Werte wird openHAB in eine Zahl umwandeln, um sie in rrd4j überhaupt speichern zu können, vermutlich nur 1 oder 0 für ON oder OFF. rrd4j ist insofern keine glückliche Wahl, aber ich verstehe durchaus die Idee dahinter, und grundsätzlich sollte das auch funktionieren (ich hab das aber selbst nie getestet).

        Allerdings hast Du noch ein Teil der Konfiguration vergessen (den wichtigsten), nämlich, wie die Persistenz konfiguriert ist.

        Kommentar


          #5
          // Persistence strategies have a name and a definition and are referred to in the "Items" section
          Strategies {
          everyMinute : "0 * * * * ?"

          // If no strategy is specified for an item entry below, the default list will be used.
          default =
          }

          /*
          * Each line in this section defines for which item(s) which strategy(ies) should be applied.
          * You can list single items, use "*" for all items or "groupitem*" for all members of a group
          * item (excl. the group item itself).
          */
          Items {
          Mqtt_Temp1 : strategy = restoreOnStartup, everyChange
          Mqtt_Temp1 : strategy = restoreOnStartup, everyChange
          Mqtt_vcc2 : strategy = restoreOnStartup, everyChange
          Mqtt_vcc1 : strategy = restoreOnStartup, everyChange
          state_count : strategy = restoreOnStartup, everyChange
          mqttreset : strategy = restoreOnStartup, everyChange
          squeeze1Play : strategy = restoreOnStartup, everyChange
          squeeze1Volume : strategy = restoreOnStartup, everyUpdate, everyChange
          Network_Tv : strategy = restoreOnStartup, everyUpdate, everyMinute
          Network_Handy : strategy = restoreOnStartup, everyChange, everyMinute
          }

          So schaut die Persistenz aus.
          Ich werde gleich mal versuchen eine Rule anzulegen in welcher die Switch items auf integer Variablen umgeleitet werden. Dann sollte es ja klappen

          Kommentar


            #6
            Wenn du als Persistence rrd4j nimmst, musst du meines Wissens alles Werte jede Minute loggen.
            - openHAB 3.4.4 auf WIN11/64

            Kommentar


              #7
              Eher unwarscheinlich
              Mqtt_Temp1 : strategy = restoreOnStartup, everyChange
              Mqtt_Temp1 : strategy = restoreOnStartup, everyChange
              Mqtt_vcc2 : strategy = restoreOnStartup, everyChange
              Mqtt_vcc1 : strategy = restoreOnStartup, everyChange

              Die arbeiten sehr gut. Diese werte werden aber auch ungefähr jede Minute mit Daten gefüttert.

              Kommentar


                #8
                In der Tat müssen für korrekte Graphen die Daten im Minutenraster vorliegen, also nimm bitte everyMinute mit dazu. Da rrd4j keine wachsenden Dateien erzeugt, ist das kein Problem.

                Kommentar

                Lädt...
                X