Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. Probleme mit Cron-Plus Jobs

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Probleme mit Cron-Plus Jobs

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @ak68 last edited by mickym

      @ak68 Wie gesagt macht debug Nodes mit dem gesamten Nachrichtenobjekt rein und lass es im iobroker Protokoll ausgeben (Systemkonsole)

      Du kannst ja auch mal alle Minuten eine Nachricht ausgeben lassen und dann siehst ja ob die cron Node funktioniert.

      A 1 Reply Last reply Reply Quote 0
      • A
        ak68 @mickym last edited by ak68

        @mickym

        ein Minutenimpuls funktioniert korrekt:

        95744fdc-73a7-41d7-bd1e-f900c68cd12f-image.png

        ´mal sehen was um 00:00 passiert 🙂

        1 Reply Last reply Reply Quote 0
        • A
          ak68 last edited by ak68

          @ak68
          Leider wurden die Daten wieder nicht in die Influx-DB geschrieben (trotz korrektem debug)

          da7535a4-3399-42be-bc36-c636765b160a-image.png

          Es taucht aber im log folgende Fehlermedlung auf, die evtl damit zu tum haben könnte:

          8707260b-242a-4d50-8ef5-ef6f08c7179d-image.png

          Wie und wo sollte der Context-Speicher definiert sein ?

          In den Cron-nodes ist dieser bei mir so definiert:

          cfcb4ec4-58e4-47a9-a767-4194c48b80b0-image.png

          außerdem:

          ce2b7630-a485-47f0-bbcf-373eac92c642-image.png

          Ist das korrekt ?

          mickym 2 Replies Last reply Reply Quote 0
          • Marc Berg
            Marc Berg Most Active @ak68 last edited by

            @ak68 sagte in Probleme mit Cron-Plus Jobs:

            WO habe ich hier einen "Denkfehler" ?

            Die Daten, die geschrieben werden sollen, hast du noch nicht gezeigt. Könnte es sein, dass um exakt 0:00 Uhr einfach noch keine Daten vorliegen?

            A 1 Reply Last reply Reply Quote 0
            • A
              ak68 @Marc Berg last edited by

              @marc-berg sagte in Probleme mit Cron-Plus Jobs:

              @ak68 sagte in Probleme mit Cron-Plus Jobs:

              WO habe ich hier einen "Denkfehler" ?

              Die Daten, die geschrieben werden sollen, hast du noch nicht gezeigt. Könnte es sein, dass um exakt 0:00 Uhr einfach noch keine Daten vorliegen?

              Doch die Daten liegen vor (vgl. Thread oben mit Anzeige der Systemkonsole)
              z.B. Strom_Bezug_Zähler oder Strom_Bezug_Heute

              1 Reply Last reply Reply Quote 0
              • mickym
                mickym Most Active @ak68 last edited by mickym

                @ak68 Jedenfalls siehst Du, dass es an den Cron Nodes erst mal nicht liegt und auch Werte ausgelesen werden.

                Angeblich soll es zwar mit dem Adapter 5.2.0 nun einen Filekontext geben für die Kontextvariablen, aber ich habe das noch nie gesehen, dass man das irgendwo im Adapter einstellen kann. Dazu muss man nämlich die settings.js modifizieren:
                a205b053-f265-4658-b6b0-463ba4c6ba90-image.png

                Ich hatte da auch schon mal nachgefragt, aber keine Antwort bekommen:
                https://forum.iobroker.net/topic/73812/nodered-adapter-5-2-0-permanent-kontext?_=1733226649427

                Insofern gehe ich davon aus, dass es keinen Filekontext gibt.
                Wenn Du settings.js richtig konfigurierst kannst Du nämlich sogar wählen, dann bekommst Du nämlich rechts ein zusätzliches Auswahlfeld.
                Das geht aber mit dem NOdeRed Adapter nicht, sondern nur in der Standalone Version von NodeRed, da man im Adapter dem Anwender den Zugriff auf die settings.js verwehrt:

                fdf7e2c1-ede8-4633-8463-2585203f64e9-image.png

                Die 3 Optionen der Cron Node:

                0c64a786-56c4-4f21-88c3-c460c2745f63-image.png

                1. Standardmässig ist None eingestellt und es wird nichts gespeichert. Ich hab das bis jetzt immer so gelassen, weil den State einer Cron Node zu speichern, nur bei dynamischen Schedules, die Du über Nachrichten definierst einen Vorteil bring.
                2. Wenn Du wie in Deinem Fall - local File System eingestellt hast, dann hast Du in deinem Datenverzeichnis ein cronplusdata Verzeichnis, wo die States in einer Datei gespeichert sind:
                  4421caab-ebca-45a2-95e7-b15c533bdcf1-image.png
                3. Wenn im NodeContext gespeichert wird, dann ist der im iobroker Adapter immer im Memory - da ich wie gesagt, obwohl es als Feature in 5.2.0 steht keine Möglichkeit gefunden habe, den Kontext im Dateisystem geschweige den beides zu definieren. In der Standalone Version bzw. wenn man Zugriff auf die settings.js hat, kann man auch das Dateisystem für den Kontext als Standard angeben. Dann hättest Du hier einen Vorteil.
                  Sprich auch das geht Dir bei einem Neustart verloren. Ist aber nur für dynam. Schedules relevant und die kann man ja über eine Inject Node auch wieder initialisieren.

                Wie gesagt, den Status der cronplus zwischen den Neustarts zu speichern, halte ich für überflüssig, wenn Du die Schedules innerhalb der Node konfigurierst. Insofern kannst Du auch den Standard auf None lassen.

                Diese globale Kontext Node macht was ganz anderes. Damit kann man nur den globalen Kontext in einer Datei abspeichern. Ob das wieder eingelesen wird, weiß ich nicht.
                https://flows.nodered.org/node/node-red-contrib-persistent-global-context
                Jedenfalls wird ja nur der globale Kontext und kein Flow oder Node kontext gespeichert. Insofern finde ich die Node eher überflüssig.
                3f1ce927-d35a-4703-af70-0e264ff85a0e-image.png
                Diese Fehlermeldung scheint mir von dieser Node zu stammen
                8febfcba-c715-4ca0-aa65-b1d6e46971ae-image.png
                und ich würde die im iobroker Umfeld eh nicht nutzen. Ich gehe aber davon aus, dass Du einen gültigen Pfad zu einer Datei angeben musst.

                Generell geht der Node-Red Adapter davon aus, dass Du keine Kontextdaten permanent speichern musst, da Du ja alle Daten in Datenpunkten in den Objekten im iobroker speichern kannst und bei Bedarf wieder einlesen kannst.

                1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @ak68 last edited by mickym

                  @ak68 Du musst halt in Deinem Flow mit debug Nodes weiter gehen. Meine Vermutung liegt darin, dass in der Influx Db nichts geschrieben wird, warum auch immer. Mach eine Debug Node vor die letzte Node bevor du in Influx was speicherst und schau, ob die Daten DORT ankommen:

                  e464af65-fad1-4836-a620-f8d211f8a0d8-image.png

                  Fazit: An der cron-plus Node liegt es nicht, das siehst Du ja - Du musst halt weiter hinten im Flow suchen.

                  A 1 Reply Last reply Reply Quote 0
                  • mickym
                    mickym Most Active last edited by

                    So ich habe mir die Node angeschaut:

                    9f860b3d-19e0-4674-bad8-6f18a5cd7b9f-image.png

                    Wie vermutet, speichert die Node den globalen Kontext in einer Datei und lädt ihn auch wieder.

                    Das Ganze wird im Datenverzeichnis von NodeRed gespeichert:

                    7e738599-8cda-4f2e-a885-a54ed9b0aab9-image.png

                    Also im iobroker Umfeld kann man auf sowas verzichten.

                    1 Reply Last reply Reply Quote 0
                    • A
                      ak68 @mickym last edited by ak68

                      @mickym sagte in Probleme mit Cron-Plus Jobs:

                      @ak68 Du musst halt in Deinem Flow mit debug Nodes weiter gehen. Meine Vermutung liegt darin, dass in der Influx Db nichts geschrieben wird, warum auch immer. Mach eine Debug Node vor die letzte Node bevor du in Influx was speicherst und schau, ob die Daten DORT ankommen:

                      e464af65-fad1-4836-a620-f8d211f8a0d8-image.png

                      Fazit: An der cron-plus Node liegt es nicht, das siehst Du ja - Du musst halt weiter hinten im Flow suchen.

                      Danke für Deine Mühe

                      Der debug-node liegt schon VOR der Influx-DB, also hast Du wohl Recht, dass das Schreiben in die InfluxDB fehlschlägt.
                      ICH lösche noch einmal die DB und lege diese neu an um evtl. weiterzukommen 🙂

                      A 1 Reply Last reply Reply Quote 0
                      • A
                        ak68 @ak68 last edited by

                        @ak68

                        Nach Neuanlagen der Influx-Datenbanken werden jetzt die Daten korrekt in die DB übernommen 🙂

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        683
                        Online

                        31.7k
                        Users

                        79.7k
                        Topics

                        1.3m
                        Posts

                        3
                        13
                        500
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo