Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [Vorlage] JS: Log-Datei aufbereiten für VIS

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Vorlage] JS: Log-Datei aufbereiten für VIS

    This topic has been deleted. Only users with topic management privileges can see it.
    • Mic
      Mic Developer @sigi234 last edited by

      @sigi234 Kannst Du mir einen Gefallen tun, nämlich das Script zu kopieren bei Dir (Strg + a), in eine Textdatei kopieren und hier hochladen. Mir ist nämlich auch schon passiert, dass ich ein Github-Script übernommen hatte, aber dann zu viel kopierte, was es zerlegte.

      sigi234 1 Reply Last reply Reply Quote 0
      • Mic
        Mic Developer last edited by

        @liv-in-sky erster Verdacht: die Regex kommt nicht mit eckigen Klammern im Logtext klar. Schaue ich mir weiterhin an.

        Glasfaser 1 Reply Last reply Reply Quote 0
        • Glasfaser
          Glasfaser @Mic last edited by

          Ich habe auf die neue Version 1.5 aktualisiert inkl. meinen Einstellungen und habe keine Probleme , es läuft wie es sein soll.👍

          Das einzige was ich gemacht habe , das ich den Ordner " javascript.0.Log-Script " zuvor gelöscht habe , so das keine alten Daten vorhanden waren .!!??

          Meine aktuellen Testmeldungen :

          11.JPG

          1 Reply Last reply Reply Quote 1
          • sigi234
            sigi234 Forum Testing Most Active @Mic last edited by

            @Mic sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:

            @sigi234 Kannst Du mir einen Gefallen tun, nämlich das Script zu kopieren bei Dir (Strg + a), in eine Textdatei kopieren und hier hochladen. Mir ist nämlich auch schon passiert, dass ich ein Github-Script übernommen hatte, aber dann zu viel kopierte, was es zerlegte.

            Log_Skript_1_5.txt

            1 Reply Last reply Reply Quote 0
            • Mic
              Mic Developer last edited by

              @sigi234
              Wie vermutet Copy-Paste-Fehler bei Dir. Grüne Farbe = auskommentiert, kann also das Script nicht lesen. Daher findet es auch nicht BLACKLIST_GLOBAL.
              sigi.png

              1 Reply Last reply Reply Quote 1
              • Mic
                Mic Developer @liv-in-sky last edited by

                @liv-in-sky sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:

                habe seltsames verhalten - mein sql server ist aus - also kommen sql fehler und nodered fehler - die nodered fehler sind selbst definiert - sie verschwinden immer im hauptlog (oben)

                Hattest Du zufällig vorher alle Datenpunkte gelöscht? Falls nicht, bitte machen und noch mal testen.

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

                  @Mic

                  habe es zweimal getestet (2*datenpunkte gelöscht und restart script)

                  selbes verhalten - im hauptlog werden immer 2 zusammengefaßte nodered einträge angezeigt und verschwinden wieder (wie im video)
                  im selbstdef. nodered werden die nachrichten nicht zusammengefaßt - aber mitgeschrieben

                  habe mal das selbstdef. nodered auskommentiert - selber fehler

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

                    @liv-in-sky
                    sieht komisch aus …..da verschwindet noch eine Meldung , muss man schon genau hinsehen im Video !

                    Als würden nur max. 3 Zeilen funktionieren in der Tabelle , ab der vierten springt er , oder täuscht das !

                    00.JPG

                    1 Reply Last reply Reply Quote 0
                    • Mic
                      Mic Developer last edited by

                      @liv-in-sky
                      Echt seltsam. Kann es leider nicht reproduzieren. Werde ich mir noch mal genauer ansehen.
                      Ich gehe davon aus, das passiert nicht, wenn Du MERGE_LOGLINES_ACTIVE auf false setzt, richtig?

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

                        @Mic genau - nur mit merge true

                        ich installiere nochmal ganz neu - datenpunkte löschen und das script nochmal reinkopieren - um auf nummer sicher zu sein - geb dann bescheid

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

                          @Mic

                          also- nochmal alles neu gemacht - datenpunkte gelöscht - script vollständig reinkopiert und keine änderungen gemacht

                          selber fehler
                          log.gif

                          1 Reply Last reply Reply Quote 0
                          • Mic
                            Mic Developer last edited by

                            Danke @liv-in-sky
                            Habe auch gerade noch mal getestet. MERGE_LOGLINES_ACTIVE auf true läuft nicht zuverlässig, nicht alles wird geloggt. Ich werde jetzt das Script v1.5 auf v1.5.1 setzen und die Funktion MERGE_LOGLINES_ACTIVE auf "experimental", und im Default auf false, da sonst alles zu funktionieren scheint.
                            Also bitte solange MERGE_LOGLINES_ACTIVE auf false setzen, bis ich das behoben habe.

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

                              @Mic hab jetzt mal einen anderen fehler gemacht erzeugt - internet router aus !

                              es werden nun mehr sachen angezeigt - ich habe mal nodered deaktiviert und es scheint dieser fehler zu sein, der ärger macht - er zeigz sich auch anders im log - nodered und sql datenbank scheint ein tolles duo zu sein

                              	-------------------		
                              node-red.0	2019-08-06 22:55:03.091	error	at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1106:14)
                              node-red.0	2019-08-06 22:55:03.091	error	6 Aug 22:55:03 - [error] [MySQLdatabase:79f00594.84665c] Error: connect ECONNREFUSED 192.168.178.157:3306
                              	-------------------		at Timer.processTimers (timers.js:223:10)
                              	-------------------		at listOnTimeout (timers.js:263:5)
                              	-------------------		at tryOnTimeout (timers.js:300:5)
                              	-------------------		at ontimeout (timers.js:436:11)
                              	-------------------		at Timeout.doConnect [as _onTimeout] (/opt/iobroker/iobroker-data/node-red/node_modules/node-red-node-mysql/68-mysql.js:48:23)
                              	-------------------		at Pool.getConnection (/opt/iobroker/iobroker-data/node-red/node_modules/mysql/lib/Pool.js:48:16)
                              	-------------------		at PoolConnection.connect (/opt/iobroker/iobroker-data/node-red/node_modules/mysql/lib/Connection.js:118:18)
                              	-------------------		at Protocol.handshake (/opt/iobroker/iobroker-data/node-red/node_modules/mysql/lib/protocol/Protocol.js:51:23)
                              	-------------------		at Protocol._enqueue (/opt/iobroker/iobroker-data/node-red/node_modules/mysql/lib/protocol/Protocol.js:144:48)
                              	-------------------		
                              node-red.0	2019-08-06 22:55:03.087	error	at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1106:14)
                              node-red.0	2019-08-06 22:55:03.087	error	6 Aug 22:55:03 - [error] [MySQLdatabase:79f00594.84665c] Error: connect ECONNREFUSED 192.168.178.157:3306
                              	-------------------		at Timer.processTimers (timers.js:223:10)
                              	-------------------		at listOnTimeout (timers.js:263:5)
                              	-------------------		at tryOnTimeout (timers.js:300:5)
                              	-------------------		at ontimeout (timers.js:436:11)
                              	-------------------		at Timeout.doConnect [as _onTimeout] (/opt/iobroker/iobroker-data/node-red/node_modules/node-red-node-mysql/68-mysql.js:48:23)
                              	-------------------		at Pool.getConnection (/opt/iobroker/iobroker-data/node-red/node_modules/mysql/lib/Pool.js:48:16)
                              	-------------------		at PoolConnection.connect (/opt/iobroker/iobroker-data/node-red/node_modules/mysql/lib/Connection.js:118:18)
                              	-------------------		at Protocol.handshake (/opt/iobroker/iobroker-data/node-red/node_modules/mysql/lib/protocol/Protocol.js:51:23)
                              	-------------------		at Protocol._enqueue (/opt/iobroker/iobroker-data/node-red/node_modules/mysql/lib/protocol/Protocol.js:144:48)
                              	-------------------		
                              
                              Mic 1 Reply Last reply Reply Quote 0
                              • Mic
                                Mic Developer @liv-in-sky last edited by

                                @liv-in-sky cool, danke für deine Hilfe und Feedback, sehr hilfreich! Kann ich mir so näher ansehen zur Analyse. Bis dahin ist jetzt Version 1.5.1 aktiv mit deaktivierter Funktion (als Default).

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

                                  @Mic bin froh, dass du das script nochmal erneuert hast - da hilft man gern !

                                  so sieht es dann aus - und die zeilen bleiben auch stehen - ob alle meldungen aufgeführt sind, kann ich nicht sagen

                                  Image 1.png

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    slonnet last edited by

                                    Hallo zusammen,
                                    leider werden auch mit der Version 1.5.1 und MERGE_LOGLINES_ACTIVE auf false viel Logeinträge verschluckt wie bei @liv-in-sky .
                                    Ich habe noch paralell ein altes LogFile Script in der Version 0.8.1 mitlaufen. Hier sind alle Einträge vorhanden.
                                    Es scheint, als werden Einträge verschluckt, die in sehr kurzen Abständen hintereinandern kommen.

                                    LogFile.jpg

                                    Mic 1 Reply Last reply Reply Quote 0
                                    • Mic
                                      Mic Developer @slonnet last edited by

                                      @slonnet
                                      Vielen Dank fürs Testen. Bei "MERGE_LOGLINES_ACTIVE auf false" habe ich die Implementierung von tail in Verdacht. Ich finde in diesem Zusammenhang https://github.com/vladimir-kazan/nodejs-tail sehr interessant zur Implementierung, werde ich mir mal näher ansehen und in eine Testversion implementieren.

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

                                        @Mic

                                        kurz ne dumme frage - läuft das script wenn redis installiert ist ?

                                        erledigt - war ein mischmasch der datenpunkte bei der umstellung auf redis

                                        1 Reply Last reply Reply Quote 0
                                        • Mic
                                          Mic Developer last edited by Mic

                                          Breaking News 🙂

                                          Es gibt jetzt eine Version 2.01a, diese behebt alle bisherigen Fehler nach meinen umfangreichen Tests. Ab Version 1.0 wurden bei jedem neuen Logeintrag sofort die States ausgelesen und geschrieben, aber das war nicht zielführend da zu langsam, wenn schnell viele neue Logs reinkommen im kleinen ms-Bereich oder darunter. Daher wurden dadurch nicht alle Log-Einträge mitgeloggt.

                                          Ich habe daher umgestellt, nun werden die Datenpunkte nur alle paar Sekunden aktualisiert, gemäß Option STATE_UPDATE_SCHEDULE, voreingestellt alle 20 Sekunden. 2-3 Sekunden funktioniert auch.

                                          Außerdem funktioniert nun auch das Zusammenfassen der Logeinträge zuverlässig:

                                           * merge:      Log-Einträge mit gleichem Text zusammenfassen. Beispiel:
                                           *                  -----------------------------------------------------------------------------------
                                           *                  2019-08-17 20:00:00.335 - info: javascript.0 script.js.Wetter: Wetterdaten abrufen.
                                           *                  2019-08-17 20:15:00.335 - info: javascript.0 script.js.Wetter: Wetterdaten abrufen.
                                           *                  2019-08-17 20:30:00.335 - info: javascript.0 script.js.Wetter: Wetterdaten abrufen.
                                           *                  -----------------------------------------------------------------------------------
                                           *             Daraus wird dann nur noch eine Logzeile mit letztem Datum/Uhrzeit und hinzufügen von "[3 Einträge]":
                                           *                  -----------------------------------------------------------------------------------
                                           *                  2019-08-17 20:30:00.335 - info: javascript.0 [3 Einträge] script.js.Wetter: Wetterdaten abrufen.
                                           *                  -----------------------------------------------------------------------------------
                                           *
                                          

                                          Das ist jetzt auch pro Eintrag ("id") in den Optionen für LOG_FILTER ein- und ausstellbar, und nicht mehr global.

                                          Zum Aktualisieren:
                                          1.) Bestehendes Script stoppen
                                          2.) Alle Datenpunkte löschen
                                          3.) Script durch neues Script vollständig ersetzen, also nicht nur unterhalb der Optionen
                                          4.) Alle Optionen neu setzen
                                          5.) Starten und freuen 🙂

                                          Freue mich auf Euer Feedback, ob es auch bei Euch so gut und zuverlässig läuft.

                                          Hier zum Script: Version 2.01a

                                          Nachtrag:
                                          Datenpunkte ".logMostRecent" sind nicht mehr verfügbar, machen auch keinen Sinn, wenn viele Logeinträge gleichzeitig reinfliegen. Stattdessen kann man den Datenpunkt ".log" auf Veränderung überwachen, und dann dessen Inhalt entsprechend auswerten, um etwa Push-Mitteilungen etc. zu veranlassen. Gerne gebe ich Euch hierfür bei Bedarf ein Script-Beispiel.

                                          crunchip Dr. Bakterius liv-in-sky 3 Replies Last reply Reply Quote 3
                                          • crunchip
                                            crunchip Forum Testing Most Active @Mic last edited by

                                            @Mic habs gleich mal installiert, jedoch erstmal ohne etwas zu verändern und ohne gross durchzulesen.

                                            Ich hab ja gar keine Homematic😂

                                            Vielen, vielen Dank für dein Engagement 👌

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            860
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            60
                                            617
                                            112933
                                            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