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. Journal-Log erstellen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Journal-Log erstellen

    This topic has been deleted. Only users with topic management privileges can see it.
    • liv-in-sky
      liv-in-sky @tomily last edited by liv-in-sky

      @tomily

      hilft dir das vielleicht weiter

      Image 2.png

      [
         {
             "id": "a6b50a83.f2ab48",
             "type": "exec",
             "z": "884caa1c.db7b58",
             "command": "tail",
             "addpay": false,
             "append": "-n 50 /opt/iobroker//log/iobroker.current.log ",
             "useSpawn": "false",
             "timer": "",
             "oldrc": false,
             "name": "",
             "x": 380,
             "y": 680,
             "wires": [
                 [
                     "75924643.a244f8"
                 ],
                 [],
                 []
             ]
         },
         {
             "id": "bb257b64.8d68e8",
             "type": "debug",
             "z": "884caa1c.db7b58",
             "name": "",
             "active": true,
             "tosidebar": true,
             "console": false,
             "tostatus": false,
             "complete": "true",
             "targetType": "full",
             "statusVal": "",
             "statusType": "auto",
             "x": 910,
             "y": 680,
             "wires": []
         },
         {
             "id": "a22e6839.89fb98",
             "type": "inject",
             "z": "884caa1c.db7b58",
             "name": "",
             "props": [
                 {
                     "p": "payload"
                 },
                 {
                     "p": "topic",
                     "vt": "str"
                 }
             ],
             "repeat": "",
             "crontab": "",
             "once": false,
             "onceDelay": 0.1,
             "topic": "",
             "payload": "",
             "payloadType": "date",
             "x": 190,
             "y": 680,
             "wires": [
                 [
                     "a6b50a83.f2ab48"
                 ]
             ]
         },
         {
             "id": "75924643.a244f8",
             "type": "function",
             "z": "884caa1c.db7b58",
             "name": "",
             "func": "var b=Buffer.from(msg.payload);\nvar s=b.toString();\nvar out=s;\nmsg.payload= out;\nreturn msg;\nreturn msg",
             "outputs": 1,
             "noerr": 0,
             "initialize": "",
             "finalize": "",
             "x": 630,
             "y": 680,
             "wires": [
                 [
                     "bb257b64.8d68e8"
                 ]
             ]
         }
      ]
      

      T 1 Reply Last reply Reply Quote 0
      • wendy2702
        wendy2702 @tomily last edited by

        @tomily sagte in Journal-Log erstellen:

        @wendy2702
        Einen tail auf eine Datei unter Linux machen ist kein Problem.

        Sicher ?

        @tomily sagte in Journal-Log erstellen:

        tail - 50 /pfad-zur.log

        @tomily sagte in Journal-Log erstellen:

        tail -n 50 /var/log/ping.log//log/iobroker.current.log ?

        @tomily sagte in Journal-Log erstellen:

        @homoran
        Wieso antwortet Ihr dann auf eine NodeRed-Frage in der Node-Red Kategorie?

        Sorry, kommt nicht mehr vor 😁

        1 Reply Last reply Reply Quote 0
        • T
          tomily @liv-in-sky last edited by

          @liv-in-sky
          Danke. Das hilft schonmal, weil ich gesehen habe, dass ich den EXEC-Node in meinem Beispiel falsch konfiguriert habe.
          Leider funktioniert es noch nicht ganz.

          Hab im Tail mal einen Pfad zu einer Test-Logdatei angegeben und im Function-Node eine doppelte Zeile entfernt. Da kam bei mir ein Fehler. Hast du Lust nochmal drüber zu schauen?

          🙂

          Hier der minimals abgeänderte Stand:

          [
              {
                  "id": "37365980.457a5e",
                  "type": "tab",
                  "label": "TEST",
                  "disabled": false,
                  "info": ""
              },
              {
                  "id": "69747f35.56185",
                  "type": "debug",
                  "z": "37365980.457a5e",
                  "name": "",
                  "active": true,
                  "tosidebar": true,
                  "console": false,
                  "tostatus": false,
                  "complete": "false",
                  "statusVal": "",
                  "statusType": "auto",
                  "x": 770,
                  "y": 80,
                  "wires": []
              },
              {
                  "id": "761ec9ef.a184b8",
                  "type": "exec",
                  "z": "37365980.457a5e",
                  "command": "tail",
                  "addpay": true,
                  "append": "-n 50 /opt/iobroker/log/iobroker.2021-02-08.log",
                  "useSpawn": "false",
                  "timer": "",
                  "oldrc": false,
                  "name": "",
                  "x": 290,
                  "y": 80,
                  "wires": [
                      [
                          "e5eb10bd.53bc78"
                      ],
                      [],
                      []
                  ]
              },
              {
                  "id": "649f8f7b.18614",
                  "type": "inject",
                  "z": "37365980.457a5e",
                  "name": "",
                  "props": [
                      {
                          "p": "payload"
                      },
                      {
                          "p": "topic",
                          "vt": "str"
                      }
                  ],
                  "repeat": "",
                  "crontab": "",
                  "once": false,
                  "onceDelay": 0.1,
                  "topic": "",
                  "payload": "",
                  "payloadType": "date",
                  "x": 100,
                  "y": 80,
                  "wires": [
                      [
                          "761ec9ef.a184b8"
                      ]
                  ]
              },
              {
                  "id": "e5eb10bd.53bc78",
                  "type": "function",
                  "z": "37365980.457a5e",
                  "name": "",
                  "func": "var b=Buffer.from(msg.payload);\nvar s=b.toString();\nvar out=s;\nmsg.payload= out;\nreturn msg;",
                  "outputs": 1,
                  "noerr": 0,
                  "initialize": "",
                  "finalize": "",
                  "x": 540,
                  "y": 80,
                  "wires": [
                      [
                          "69747f35.56185"
                      ]
                  ]
              }
          ]
          
          liv-in-sky 2 Replies Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @tomily last edited by

            @tomily

            der fehler sagt mit im moment nix - aber da ja eine ausgabe kommt, liegt es vielleicht am inject-node

            Image 5.png

            1 Reply Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @tomily last edited by liv-in-sky

              @tomily liegt daran:

              Image 6.png

              damit kann man einen befehl mitgeben, was bei uns ja nicht nötig ist - da inject nur timestamp

              T 1 Reply Last reply Reply Quote 0
              • T
                tomily @liv-in-sky last edited by

                @liv-in-sky
                Danke. Ich denke wir sind der Sache auf der Spur 🙂

                Allerdings ist es wie verhext, da ich in der Debug-Anzeige gar keine Ausgabe bekomme.
                Wenn ich gleichzeitig per putty einen tail auf die selbe datei mache, sehe ich aber, dass dort Einträge kommen.

                Mache ich Grundlegend etwas falsch?
                Kannst du mir von deinem jetzigen Flow, nochmal einen export machen?

                2827c4d9-2e2a-42b8-baf4-6cec5913a7cb-grafik.png

                liv-in-sky 1 Reply Last reply Reply Quote 0
                • liv-in-sky
                  liv-in-sky @tomily last edited by liv-in-sky

                  @tomily

                  dein geposteter flow war schon richtig - bei diesem bild im letzten post bist du im 2ten ausgang dran - da kommt nichts, wenn kein error da ist - das war nur zur überprüfung wo der fehler herkam

                  du musst natürlich wieder am obersten punkt connectet sein und durch die function gehen - so wie du es gepostet hast - nur mit dieser einstellung bzw darf das nicht angeklickt sein - dann kommt auch kein error und dein flow funktioniert
                  Image 6.png

                  T 1 Reply Last reply Reply Quote 0
                  • T
                    tomily @liv-in-sky last edited by

                    @liv-in-sky

                    Danke! Langsam fange ich es an zu kapieren. Vorallem wie der EXEC-Node funktioniert.
                    Leider bekomme ich egal wie ich es drehe und wende keine Ausgabe mehr im Debug Fenster. Irgendwo muss da noch ein Unterschied sein 🤦‍♂️

                    Ich werde noch weiter Testen und schauen, woran das liegen könnte.

                    An für sich behauptest du, dass der Tail befehl bei einer Änderung der Logdatei ausgeführt wird und mir diese mehrzeilige Ausagbe dann übermittelt? Habe ich das richtig verstanden?

                    liv-in-sky 3 Replies Last reply Reply Quote 0
                    • liv-in-sky
                      liv-in-sky @tomily last edited by

                      @tomily

                      ja - funktioniert bei mir

                      [
                         {
                             "id": "a6b50a83.f2ab48",
                             "type": "exec",
                             "z": "884caa1c.db7b58",
                             "command": "tail",
                             "addpay": false,
                             "append": "-n 50 /opt/iobroker//log/iobroker.current.log ",
                             "useSpawn": "false",
                             "timer": "",
                             "oldrc": false,
                             "name": "",
                             "x": 1190,
                             "y": 420,
                             "wires": [
                                 [
                                     "75924643.a244f8"
                                 ],
                                 [],
                                 []
                             ]
                         },
                         {
                             "id": "bb257b64.8d68e8",
                             "type": "debug",
                             "z": "884caa1c.db7b58",
                             "name": "",
                             "active": true,
                             "tosidebar": true,
                             "console": false,
                             "tostatus": false,
                             "complete": "true",
                             "targetType": "full",
                             "statusVal": "",
                             "statusType": "auto",
                             "x": 1470,
                             "y": 400,
                             "wires": []
                         },
                         {
                             "id": "a22e6839.89fb98",
                             "type": "inject",
                             "z": "884caa1c.db7b58",
                             "name": "",
                             "props": [
                                 {
                                     "p": "payload"
                                 },
                                 {
                                     "p": "topic",
                                     "vt": "str"
                                 }
                             ],
                             "repeat": "",
                             "crontab": "",
                             "once": false,
                             "onceDelay": 0.1,
                             "topic": "",
                             "payload": "",
                             "payloadType": "date",
                             "x": 1040,
                             "y": 420,
                             "wires": [
                                 [
                                     "a6b50a83.f2ab48"
                                 ]
                             ]
                         },
                         {
                             "id": "75924643.a244f8",
                             "type": "function",
                             "z": "884caa1c.db7b58",
                             "name": "",
                             "func": "var b=Buffer.from(msg.payload);\nvar s=b.toString();\nvar out=s;\nmsg.payload= out;\nreturn msg;\n",
                             "outputs": 1,
                             "noerr": 0,
                             "initialize": "",
                             "finalize": "",
                             "x": 1320,
                             "y": 400,
                             "wires": [
                                 [
                                     "bb257b64.8d68e8"
                                 ]
                             ]
                         }
                      ]
                      
                      
                      
                      


                      anim-gif44.gif

                      1 Reply Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @tomily last edited by liv-in-sky

                        @tomily sagte in Journal-Log erstellen:

                        An für sich behauptest du, dass der Tail befehl bei einer Änderung der Logdatei ausgeführt wird und mir diese mehrzeilige Ausagbe dann übermittelt? Habe ich das richtig verstanden?

                        übrigens habe ich das nicht behauptet - der tailbefehl muss angestoßen werden. in den nodes gibt es nichts, was das tun könnte. aber eins nach nach dem anderen - ich wollte erstmal die daten bekommen. wie das richtig getriggert wird , müssen wir noch rausfinden.

                        1 Reply Last reply Reply Quote 0
                        • liv-in-sky
                          liv-in-sky @tomily last edited by

                          @tomily

                          damit der flow getriggert wird, kannst du das nutzen -

                          Image 7.png

                          aber vorsicht, wenn das file oft geändert wird, wird oft getriggert
                          auf das iobroker log würde ich das nicht anwenden - da wird sich tot getriggert

                          da müßte dann eine pause eingebaut werden, das zwischen zwei triggern mind. ein paar sekunden liegen - daher würde ich (aus mangel an wissen) den timestamp einfach alle x sekunden wiederholen - so hast du es in der hand, wie oft getriggert wird

                          daher einfach eine passende wiederholung einstellen

                          Image 9.png

                          dann wird alle x sekunden getriggert

                          T 1 Reply Last reply Reply Quote 0
                          • T
                            tomily @liv-in-sky last edited by tomily

                            @liv-in-sky
                            Geil!!!Danke für die Mühe mit dem Mini-Video. Ich hatte alles so eingestellt wie Du. Habe den ganzen ioBroker mal Neugestartet. Anschließend hat es sofort funktioniert. Irgendwas muss sich da aufgehängt haben....

                            Die Anzeige kommt jetzt tatsächlich wie gewünscht im Textfeld und Debugfenster an.
                            Jetzt wäre es nur noch geil, wenn ich die Zeilen trennen könnte. Dann habe ich mein Ziel mehr als erreicht 🙂

                            Habe mal von Hand eine Test-LOG erstellt, die sich erst mal nicht ständig ändert. Den Trigger per "Wiederholung" ist ne super Idee und genügt vollkommen.

                            9fd59325-d862-44f1-aa30-4654a499034b-grafik.png

                            6187f993-df74-4fb3-a132-112f56f4661b-grafik.png

                            liv-in-sky 1 Reply Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @tomily last edited by

                              @tomily

                              weißt du zufällig, ob das dashboard normalen text oder html formatierten text braucht

                              Homoran 1 Reply Last reply Reply Quote 0
                              • Homoran
                                Homoran Global Moderator Administrators @liv-in-sky last edited by

                                @liv-in-sky sagte in Journal-Log erstellen:

                                @tomily

                                weißt du zufällig, ob das dashboard normalen text oder html formatierten text braucht

                                nimm doch einmal einfach <br> und beim zweiten \n

                                T 1 Reply Last reply Reply Quote 0
                                • T
                                  tomily @Homoran last edited by

                                  @homoran
                                  Müsste beides gehen. Wenn man den Text-Node verwendet ist es normaler Text. Wenn man das "Template-Node" verwendet müsste es meiens Wissens nach HTML sein.

                                  Sieht aktuell beides gleich aus:

                                  7d32c476-c094-410d-be00-29e1681bef06-grafik.png

                                  70b3fb8e-36c1-413f-a791-1fb21e8a1b39-grafik.png

                                  liv-in-sky 1 Reply Last reply Reply Quote 0
                                  • liv-in-sky
                                    liv-in-sky @tomily last edited by

                                    @tomily bin noch auf ideen suche - der tail befehl gibt das ohne richtiges kennzeichen aus, was eine neue zeile ist. es sind auch "seltsame" escape zeichen im text - da habe ich mit regex ein problem

                                    ich such noch ein wenig, ob ich etwas finde, womit ich den text-payload richtig zerlegen kann

                                    T 1 Reply Last reply Reply Quote 0
                                    • T
                                      tomily @liv-in-sky last edited by

                                      @liv-in-sky
                                      Geil, ich danke Dir vielmals. Bitte mache Dir keinen Stress. Die Sache hat keine Hektik. Bin zwar gespannt, aber du musst dich nicht beeilen.

                                      Habe einen Aktualisieren-Button eingebaut. Dann kann man sich die Infos laden, wenn man es braucht, ohne dass ständig refresehd wird:

                                      be9a8313-4120-4e23-85d2-20ce9b1d2e49-grafik.png
                                      c661c645-c221-4ffc-b285-776af82e486c-grafik.png

                                      liv-in-sky 2 Replies Last reply Reply Quote 0
                                      • liv-in-sky
                                        liv-in-sky @tomily last edited by

                                        @tomily

                                        kannst du mir mal bitte den inhalt deines ping files posten - vielleicht findet sich da was zum zeileunterschied - oder wie wird das ersellt - mit welchen befehlen - mit dem iobroker log file test ist das irgenwie schwierig - das mit dem aktualisierungsknopf ist eine gute idee

                                        T 1 Reply Last reply Reply Quote 0
                                        • liv-in-sky
                                          liv-in-sky @tomily last edited by

                                          @tomily

                                          ich frage deshalb danach, weil es vielleicht möglich ist, schon im log-vorgng etwas einzubinden, was als zeilentrenner später in nodered erkannt wird und durch </br> getauscht wird

                                          1 Reply Last reply Reply Quote 0
                                          • T
                                            tomily @liv-in-sky last edited by

                                            @liv-in-sky
                                            Bisher gibt es das LOG so noch nicht. Ich werde das durch andere Scripte erstellen und befüllen lassen.
                                            Somit sind noch alle Wege offen. Das Testlog habe ich mit vi einfach selbst untereinander geschrieben.

                                            Denkbar und Sinnvoll wäre es, dass ich jede neue Zeile mit Datum, Uhrzeit + ": " Doppelpunkt am Ende beginne. Also z.B.

                                            08.02.21 - 14:31: Zeile 1
                                            08.02.21 - 14:31: Zeile 2
                                            08.02.21 - 14:32: Bla
                                            08.02.21 - 14:34: Bla bla

                                            Wäre das zum parsen Sinnvoll?

                                            liv-in-sky Homoran 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            976
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            62
                                            2673
                                            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