Ankündigung

Einklappen
Keine Ankündigung bisher.

Rule per "Time cron" wird nach einigen Tagen nicht mehr ausgeführt

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

    Rule per "Time cron" wird nach einigen Tagen nicht mehr ausgeführt

    Hallo,
    ich habe eine Rule angelegt, die alle 5 Minuten ausgeführt wird. Soweit kann ich das im LOG auch sehen. Immer wieder mal nach einigen Tagen stoppt die regelmäßige Ausführung. Im LOG kann ich dabei nichts erkennen, was der Auslöser sein könnte. Hat jemand eine Idee das einzugrenzen?

    Code:
    rule "Variablen Update aus CCU2 - cron"
        when
            Time cron "0 */5 * ? * *"
        then
        {
            logInfo("rules", "Cron CCU2 durchlaufen")
            sendCommand(Var_Reload, ON)
            
    sendCommand(bg_anwesend, RefreshType.REFRESH)
    sendCommand(ch_anwesend, RefreshType.REFRESH)
    sendCommand(abwesend_manuell, RefreshType.REFRESH)
    sendCommand(Anwesenheit, RefreshType.REFRESH)
            sendCommand(P_frostschutz, RefreshType.REFRESH)
        }
    end

    #2
    Sehr schwierig. Bei OH1 hatte ich solche Probleme auch gelegentlich. Welches verwendest du?

    Kommentar


      #3
      Ich bin auf der aktuellen stable Version 2.3

      Kommentar


        #4
        Hast Du noch andere Time cron Trigger, die sich potentiell mit dieser Rule überschneiden könnten?

        openHAB hat für die Ausführung von cron Triggern zwei reservierte Threads, wenn ein Thread aus irgendeinem Grund hängen bleibt, steht dann nur noch ein Thread zur Verfügung, der aber durchaus auch von einer anderen Time cron Rule belegt werden kann.

        Allgemein wird dringend geraten, lieber die Methode als die Action zu verwenden also Var_Reload.sendCommand(ON)statt sendCommand(Var_Reload, ON). Auch wenn es im vorliegenden Fall nicht stört, möchte ich dazu raten, das zu ändern, wenn es keine zwingenden Gründe für die Action gibt.

        Kommentar


          #5
          erstmal danke für den Tipp bzgl. Nutzung der Methode statt Action.

          ich habe nur noch einen anderen Time Cron Trigger:
          Code:
                  Time cron "0 * * * * ?"     // Regel wir jede Minute überprüft
          damit zähle ich bei laufender Bewässerung minütlich rückwärts um mir die Restlaufzeit anzeigen zu lassen.

          Kommentar


            #6
            Da beide Rules jeweils zur vollen Minute laufen, kollidieren sie, sobald einmal eine Rule hängen bleibt.
            Es bietet sich an, die Refresh-Regel auf 30 Sekunden zu verschieben:
            Code:
            Time cron "30 0/5 * * * ?"

            Kommentar


              #7
              Beide Rules unterscheiden sich durch die Position des Fragezeichens im Time Cron.
              Ich hab ähnliche Probleme gehabt und genau diese Positionen getauscht.

              Versuch mal:
              Code:
               
               Time cron "0 */5 * * * ?"
              Holger

              Kommentar


                #8
                Grundsätzlich kann das Fragezeichen entweder auf dem Wochentag oder auf dem Tag des Monats stehen, üblicherweise verwendet man einen Stern für den Tag des Monats, falls beide Werte keine Bedeutung haben sollen. Das sollte aber im vorliegenden Fall keine Rolle spielen.

                Kommentar


                  #9
                  Ich hatte nun sowohl die Position des Fragezeichens angepasst (bei beiden gleich und am Ende) als auch die minütliche Regel auf die Position 30 Sekunden gesetzt. Lief ein paar Tage, dann gab es wieder einen Stopp der Ausführung.
                  Aktuell habe ich einen Cron ersetzt durch andere Lösung und beobachte mal was nun passiert.

                  Kommentar


                    #10
                    mal wieder ein Update: ich hab jetzt nur noch den einen Time Cron Trigger: auch immer wieder alle paar Tage der plötzliche Zustand, dass er nicht mehr gerufen wird. Viel schlimmer dabei ist, dass mein Bewässerungsablauf (der manuell per Taste) gestartet wird, dann nicht mehr "weiterschaltet", sprich für immer eingeschaltet bleibt. Außerdem hab ich beobachtet, dass das reine Öffnen der rules-Datei und erneute Speichern wieder alles in Gang setzt (offenbar aber nicht immer).
                    Zuletzt geändert von hypoch; 16.10.2018, 19:11.

                    Kommentar

                    Lädt...
                    X