Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node Red Persistence Funktion einschalten

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Node Red Persistence Funktion einschalten

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      Marty56 last edited by

      Node Red hat ja in der Version 19 eine Persistence Funktion, die man für die Variablen aktivieren kann.

      Das würde ich gerne machen.

      Leider finde ich die entsprechenden settings.json nicht, bzw. das File, das ich gefunden habe, hat keine Einträge.

      Hat jemand eine Dokumentation wo der Node Red Adapter seine Verzeichnisse abgelegt hat?

      1 Reply Last reply Reply Quote 0
      • R
        rewenode last edited by

        Beim Starten der node-red instanz wird die Datei:

         /opt/iobroker/iobroker-data/node-red/settings.js
        
        

        jedesmal neu erstellt. Gültige Einträge können aber in der Datei:

        /opt/iobroker/node_modules/iobroker.node-red/settings.js
        
        

        gemacht werden. Diese werden dann übernommen.

        ACHTUNG!

        Diese Datei nach Änderungen sichern, da sie ggf. Beim Update des Adapters überschrieben wird.

        Seit node-red v19.0 kann ein ‚Persistent Context‘ https://discourse.nodered.org/t/a-guide … ntext/4115 eingerichtet werden.

        Dabei können flow-context-variablen u.a. automatisch in einer Datei gespeichert werden. Sie stehen dann beim nächsten Programmstart automatisch zur Verfügung.

        Zur Einrichtung muss ein Attribut im Object module.export in der Datei:

        opt/iobroker/node_modules/iobroker.node-red/settings.js

        zugefügt werden:

        ...
            // Context Storage
            // The following property can be used to enable context storage. The configuration
            // provided here will enable file-based context that flushes to disk every 30 
            // seconds.
            // Refer to the documentation for further options: 
            // https://nodered.org/docs/api/context/
            //
            contextStorage: {
                default: {
                    module:"localfilesystem"
                },
            },
        ...
        

        Nach Neustart der node-red Instanz wird automatisch ein Ordner:

        /opt/iobroker/iobroker-data/node-red/context

        angelegt. Innerhalb dieses Ordners wird automatisch ein Unterordner mit der ID des flows angelegt, welcher flow-variablen verwendet. In diesem findet sich dann eine Datei Namens: flow.json, welche die aktuellen flow-Variablen dieses flows enthält.

        Context Speicherstruktur
        3999_context.png

        aktivierter 'Persistent Context'
        3999_activcontext.png

        1 Reply Last reply Reply Quote 0
        • M
          Marty56 last edited by

          Vielen Dank. Großartiger Support. Werde ich gleich mal ausprobieren

          1 Reply Last reply Reply Quote 0
          • G
            Garf last edited by

            @rewenode

            Dein Wissen in Bezug auf Node Red scheint ja unerschöpflich zu sein. :mrgreen:

            Du solltest dein Wissen mal in einem Buch niederschreiben. :idea:

            Mindestens einen Käufer kenne ich schon.

            Die Peristente Context Funktion ist ja grundsätzlich eine feine Sache. Viele nutzen jedoch einen Einplatinencomputer mit einer SD-Card als Massenspeichermedium. Wenn ich mir jetzt vorstelle wieviele Schreib- und Lesezyklen da hinzukommen, wird sich die Lebensdauer einer SD-Karte enorm verkürzen. Wäre es deshalb nicht sinnvoller einer diese Varianten zu verwenden?

            3639_sc1.jpg
            3639_sc2.jpg

            Wobei ich mir dann die Frage stelle wie man dies dann in einem change-Node beim Setzen einer flow- oder globale Variablen macht.

            Ein Sache konnte ich bisher noch nicht nachvollziehen:
            3639_sc3_.jpg
            Wann und wodurch werden diese Dateien erzeugt?

            1 Reply Last reply Reply Quote 0
            • R
              rewenode last edited by

              @Garf:

              … Wenn ich mir jetzt vorstelle wieviele Schreib- und Lesezyklen da hinzukommen, wird sich die Lebensdauer einer SD-Karte enorm verkürzen. Wäre es deshalb nicht sinnvoller einer diese Varianten zu verwenden? `

              Da hast du absolut recht. Das Thema ist recht komplex. Falls du da tiefer einsteigen willst:

              https://nodered.org/docs/api/context/

              https://nodered.org/docs/api/context/st … filesystem

              @Garf:

              Wobei ich mir dann die Frage stelle wie man dies dann in einem change-Node beim Setzen einer flow- oder globale Variablen macht. `
              Das ist ganz clever gemacht. Siehe hier:

              https://discourse.nodered.org/t/a-guide … xt/4115/45

              @Garf:

              Ein Sache konnte ich bisher noch nicht nachvollziehen:… `

              Die Dateien werden nur gebildet, wenn du innerhalb eines function-nodes den node.context benutzt. Gebildet werden sie dann automatisch.
              3999_persistent_1.png

              @Garf:

              Du solltest dein Wissen mal in einem Buch niederschreiben. `

              So schnell, wie du lernst, wäre das ein alter Hut für dich, wenn es erscheint;-)

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

              Support us

              ioBroker
              Community Adapters
              Donate

              1.0k
              Online

              31.6k
              Users

              79.4k
              Topics

              1.3m
              Posts

              3
              5
              5399
              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