NEWS
[Vorlage] JS: Log-Datei aufbereiten für VIS
-
@Glasfaser ändert leider nichts

-
Mhhh , habe gerade nochmal verglichen , dachte es hatte einfluss das nach dem - error: ein Leerzeichen fehlte ...
Kann du den Error im Datenpunkt log sehen ?


@Glasfaser nein, ist darin nicht enthalten
-
@Glasfaser nein, ist darin nicht enthalten
-
Da bin gerade überfragt ….. mehr kann ich dir im Moment leider nicht weiterhelfen , da ich gerade ein großes ? dazu habe …

Warte auf Mic
@Glasfaser vielen Dank für deine Mühe

-
ich hab im Log folgende Fehlermeldungen:
2020-02-14 20:06:16.407 - error: rtspStream.0 (14568) uncaught exception: i is not defined 2020-02-14 20:06:16.408 - error: rtspStream.0 (14568) ReferenceError: i is not defined 2020-02-14 20:06:17.452 - error: host.Pi4-Server Caught by controller[43]: frame=95046 fps= 15 q=6.1 size= 315696kB time=01:45:32.56 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.452 - error: host.Pi4-Server Caught by controller[44]: frame=95054 fps= 15 q=3.9 size= 315727kB time=01:45:33.06 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.452 - error: host.Pi4-Server Caught by controller[45]: frame=95061 fps= 15 q=4.7 size= 315740kB time=01:45:33.64 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.452 - error: host.Pi4-Server Caught by controller[46]: frame=95069 fps= 15 q=5.0 size= 315772kB time=01:45:34.07 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.453 - error: host.Pi4-Server Caught by controller[47]: frame=95076 fps= 15 q=4.7 size= 315785kB time=01:45:34.65 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.453 - error: host.Pi4-Server Caught by controller[48]: frame=95084 fps= 15 q=4.6 size= 315819kB time=01:45:35.15 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.453 - error: host.Pi4-Server Caught by controller[49]: frame=95092 fps= 15 q=5.7 size= 315848kB time=01:45:35.66 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.453 - error: host.Pi4-Server Caught by controller[50]: frame=95100 fps= 15 q=4.7 size= 315864kB time=01:45:36.16 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.453 - error: host.Pi4-Server Caught by controller[51]: frame=95108 fps= 15 q=4.6 size= 315900kB time=01:45:36.66 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.453 - error: host.Pi4-Server Caught by controller[52]: frame=95115 fps= 15 q=5.0 size= 315932kB time=01:45:37.24 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.454 - error: host.Pi4-Server Caught by controller[53]: frame=95123 fps= 15 q=4.2 size= 315949kB time=01:45:37.74 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.454 - error: host.Pi4-Server Caught by controller[54]: frame=95131 fps= 15 q=4.7 size= 315975kB time=01:45:38.25 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.454 - error: host.Pi4-Server Caught by controller[55]: frame=95139 fps= 15 q=4.6 size= 316009kB time=01:45:38.75 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.465 - error: host.Pi4-Server Caught by controller[56]: frame=95146 fps= 15 q=6.0 size= 316021kB time=01:45:39.26 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.465 - error: host.Pi4-Server Caught by controller[57]: frame=95154 fps= 15 q=4.8 size= 316056kB time=01:45:39.76 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.465 - error: host.Pi4-Server Caught by controller[58]: frame=95162 fps= 15 q=3.6 size= 316087kB time=01:45:40.26 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.465 - error: host.Pi4-Server Caught by controller[59]: ReferenceError: i is not defined 2020-02-14 20:06:17.465 - error: host.Pi4-Server Caught by controller[59]: at WebSocketServer.wsServer.broadcast (/opt/iobroker/node_modules/node-rtsp-stream/videoStream.js:103:54) 2020-02-14 20:06:17.466 - error: host.Pi4-Server Caught by controller[59]: at VideoStream.on (/opt/iobroker/node_modules/node-rtsp-stream/videoStream.js:109:26) 2020-02-14 20:06:17.466 - error: host.Pi4-Server Caught by controller[59]: at VideoStream.emit (events.js:198:13) 2020-02-14 20:06:17.466 - error: host.Pi4-Server Caught by controller[59]: at Mpeg1Muxer.mpeg1Muxer.on (/opt/iobroker/node_modules/node-rtsp-stream/videoStream.js:47:17) 2020-02-14 20:06:17.466 - error: host.Pi4-Server Caught by controller[59]: at Mpeg1Muxer.emit (events.js:198:13) 2020-02-14 20:06:17.466 - error: host.Pi4-Server Caught by controller[59]: at Socket.Mpeg1Muxer.stream.stdout.on (/opt/iobroker/node_modules/node-rtsp-stream/mpeg1muxer.js:39:17) 2020-02-14 20:06:17.467 - error: host.Pi4-Server Caught by controller[59]: at Socket.emit (events.js:198:13) 2020-02-14 20:06:17.467 - error: host.Pi4-Server Caught by controller[59]: at addChunk (_stream_readable.js:288:12) 2020-02-14 20:06:17.467 - error: host.Pi4-Server Caught by controller[59]: at readableAddChunk (_stream_readable.js:269:11) 2020-02-14 20:06:17.467 - error: host.Pi4-Server Caught by controller[59]: at Socket.Readable.push (_stream_readable.js:224:10) 2020-02-14 20:06:17.467 - error: host.Pi4-Server Caught by controller[59]: frame=95169 fps= 15 q=4.4 size= 316101kB time=01:45:40.84 bitrate= 408.4kbits/s speed= 1x 2020-02-14 20:06:17.467 - error: host.Pi4-Server Caught by controller[60]: frame=95177 fps= 15 q=5.3 size= 316135kB time=01:45:41.34 bitrate= 408.4kbits/s speed= 1xEs wird mir im DP error aber nichts angezeigt. Ich habe auch nichts deratiges in der blacklist. Hast du eine Erklärung dafür?
@Latzi sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
ich hab im Log folgende Fehlermeldungen:
2020-02-14 20:06:16.407 - error: rtspStream.0 (14568) uncaught exception: i is not defined 2020-02-14 20:06:16.408 - error: rtspStream.0 (14568) ReferenceError: i is not defined 2020-02-14 20:06:17.452 - error: host.Pi4-Server Caught by controller[43]: frame=95046 fps= 15 q=6.1 size= 315696kB time=01:45:32.56 bitrate= 408.4kbits/s speed= 1x (...)Es wird mir im DP error aber nichts angezeigt. Ich habe auch nichts deratiges in der blacklist. Hast du eine Erklärung dafür?
Bitte ersetze mal folgende Zeile im Script:
const LOG_PATT = '([0-9_.\\-:\\s]*)(\\s+\\- )(silly|debug|info|warn|error|)(: )([a-z0-9.\\-]*)(\\s)(.*)';Durch:
const LOG_PATT = '([0-9_.\\-:\\s]*)(\\s+\\- )(silly|debug|info|warn|error|)(: )([^\\s]*)(\\s)(.*)'; -
@Latzi sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
ich hab im Log folgende Fehlermeldungen:
2020-02-14 20:06:16.407 - error: rtspStream.0 (14568) uncaught exception: i is not defined 2020-02-14 20:06:16.408 - error: rtspStream.0 (14568) ReferenceError: i is not defined 2020-02-14 20:06:17.452 - error: host.Pi4-Server Caught by controller[43]: frame=95046 fps= 15 q=6.1 size= 315696kB time=01:45:32.56 bitrate= 408.4kbits/s speed= 1x (...)Es wird mir im DP error aber nichts angezeigt. Ich habe auch nichts deratiges in der blacklist. Hast du eine Erklärung dafür?
Bitte ersetze mal folgende Zeile im Script:
const LOG_PATT = '([0-9_.\\-:\\s]*)(\\s+\\- )(silly|debug|info|warn|error|)(: )([a-z0-9.\\-]*)(\\s)(.*)';Durch:
const LOG_PATT = '([0-9_.\\-:\\s]*)(\\s+\\- )(silly|debug|info|warn|error|)(: )([^\\s]*)(\\s)(.*)';@Mic sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
const LOG_PATT = '([0-9_.\-:\s])(\s+\- )(silly|debug|info|warn|error|)(: )([^\s])(\s)(.*)';
@Mic Applaus, Applaus

Jetzt kommen auch die Meldungen vom rtspStream durch (es waren nicht nur die error-Meldungen, eigentlich waren alle Typen betroffen).
Muss ich diese Zeile für spätere Versionen sichern oder baust du es allgemein im Script ein? -
@Mic sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
const LOG_PATT = '([0-9_.\-:\s])(\s+\- )(silly|debug|info|warn|error|)(: )([^\s])(\s)(.*)';
@Mic Applaus, Applaus

Jetzt kommen auch die Meldungen vom rtspStream durch (es waren nicht nur die error-Meldungen, eigentlich waren alle Typen betroffen).
Muss ich diese Zeile für spätere Versionen sichern oder baust du es allgemein im Script ein? -
Neue Log-Script-Version 4.8
Neuerungen:
* + Allow regular expressions in BLACKLIST_GLOBAL * + Allow regular expressions in LOG_FILTER: 'blacklist', 'clean', 'filter_all', 'filter_any' * - Fix: Log line regex, which did not allow upper case letters in host (source)Das heißt, es werden nun auch Regular Expressions unterstützt.
Um also etwa Einträge wie z.B.
script.js.System.-_Log-Script: registered 8 subscriptions and 1 schedule script.js.System.Backup: registered 0 subscriptions and 0 schedules script.js.System.Test: registered 3 subscriptions and 2 schedulesallesamt zu eliminieren, kann man einfach in
BLACKLIST_GLOBALeintragen:/registered [0-9]+ subscriptions and [0-9]+ schedules/Oder um sämtliche
script.js.System.XXXXXXXXXX:herauszuschneiden aus den Logzeilen, trägt man inLOG_FILTERuntercleanfolgendes ein:/script\.js\.[^:]*: /Weitere Beispiele sind im Script selbst. Viel Spaß damit.
Um eigene Regex zu erstellen, eignet sich https://regex101.com/ gut.
Hier das aktuelle Script wie immer: https://github.com/Mic-M/iobroker.logfile-script
Zum Update von der Vorversion: Einfach alles unterhalb von hier ersetzen:
/************************************************************************************************************************* * Ab hier nichts mehr ändern / Stop editing here! *************************************************************************************************************************/ -
@Latzi sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
das Löschdatum beim erstmaligen Betätigen aktualisiert wird
Wo siehst du das? Erledigt, ist bei mir nicht so.

@sigi234 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
@Latzi sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
das Löschdatum beim erstmaligen Betätigen aktualisiert wird
Wo siehst du das? Erledigt, ist bei mir nicht so.

Würdest du mir diesen view zu verfügung stellen? Sieht echt klasse aus und würde mir jede menge arbeit sparen

-
@sigi234 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
@Latzi sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
das Löschdatum beim erstmaligen Betätigen aktualisiert wird
Wo siehst du das? Erledigt, ist bei mir nicht so.

Würdest du mir diesen view zu verfügung stellen? Sieht echt klasse aus und würde mir jede menge arbeit sparen

@saeft_2003 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
@sigi234 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
@Latzi sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
das Löschdatum beim erstmaligen Betätigen aktualisiert wird
Wo siehst du das? Erledigt, ist bei mir nicht so.

Würdest du mir diesen view zu verfügung stellen? Sieht echt klasse aus und würde mir jede menge arbeit sparen

-
@saeft_2003 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
@sigi234 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
@Latzi sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
das Löschdatum beim erstmaligen Betätigen aktualisiert wird
Wo siehst du das? Erledigt, ist bei mir nicht so.

Würdest du mir diesen view zu verfügung stellen? Sieht echt klasse aus und würde mir jede menge arbeit sparen

Vielen Dank


-
@saeft_2003 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
@sigi234 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
@Latzi sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
das Löschdatum beim erstmaligen Betätigen aktualisiert wird
Wo siehst du das? Erledigt, ist bei mir nicht so.

Würdest du mir diesen view zu verfügung stellen? Sieht echt klasse aus und würde mir jede menge arbeit sparen

Ich habe jetzt dein view importiert, aber zurecht komme ich irgendwie nicht

Wie und welche Quelle muss ich bei dem border log widget auswählen? ich sehe nur ein graues Bild und die widget zur logauswahl und zum löschen sehe ich gar nicht. Wäre nett wenn du mir ein wenig auf die sprünge helfen könntest


-
Ich habe jetzt dein view importiert, aber zurecht komme ich irgendwie nicht

Wie und welche Quelle muss ich bei dem border log widget auswählen? ich sehe nur ein graues Bild und die widget zur logauswahl und zum löschen sehe ich gar nicht. Wäre nett wenn du mir ein wenig auf die sprünge helfen könntest


@saeft_2003 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
widget zur logauswahl und zum löschen sehe ich gar nicht
Material Design Widgets installieren.
https://forum.iobroker.net/topic/26925/test-adapter-material-design-widgets-v0-2-x -
Ich habe jetzt dein view importiert, aber zurecht komme ich irgendwie nicht

Wie und welche Quelle muss ich bei dem border log widget auswählen? ich sehe nur ein graues Bild und die widget zur logauswahl und zum löschen sehe ich gar nicht. Wäre nett wenn du mir ein wenig auf die sprünge helfen könntest


@saeft_2003 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Wie und welche Quelle muss ich bei dem border log widget auswählen?
Keine, das ist nur ein Border!
Wenn du das MDW installiert hast, siehst du die Vis-materialdesign-Table
-
@saeft_2003 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Wie und welche Quelle muss ich bei dem border log widget auswählen?
Keine, das ist nur ein Border!
Wenn du das MDW installiert hast, siehst du die Vis-materialdesign-Table
Alles klar hat jetzt bestens geklappt. Nur das komische ist in meiner Ordnerstruktor vom skript gibt es kein logall.
-
Tipp:
Um im VIS anzuzeigen, ob das Script erfolgreich läuft, könnt ihr folgendes Widget benutzen:
https://forum.iobroker.net/post/384051Das HTML-Widget prüft, ob innerhalb der letzten 30 Sekunden das Script erfolgreich gelaufen ist. Ausgabe-Beispiel:

Falls nicht erfolgreich gelaufen innerhalb der letzten 30 Sekunden:

Im Unterschied zum Datenpunkt
javascript.0.scriptEnabled.Log-Script, der nur den Status anzeigt, ob das Script aktiviert ist, wird mit obigem Widget auch geprüft, ob das Script erfolgreich lief.
Text "inactive" ist nicht ganz korrekt merke ich gerade, besser wäre wohl "Script Error" oder ähnliches.
Anzupassen im HTML des Widgets, unter:

-
Tipp:
Um im VIS anzuzeigen, ob das Script erfolgreich läuft, könnt ihr folgendes Widget benutzen:
https://forum.iobroker.net/post/384051Das HTML-Widget prüft, ob innerhalb der letzten 30 Sekunden das Script erfolgreich gelaufen ist. Ausgabe-Beispiel:

Falls nicht erfolgreich gelaufen innerhalb der letzten 30 Sekunden:

Im Unterschied zum Datenpunkt
javascript.0.scriptEnabled.Log-Script, der nur den Status anzeigt, ob das Script aktiviert ist, wird mit obigem Widget auch geprüft, ob das Script erfolgreich lief.
Text "inactive" ist nicht ganz korrekt merke ich gerade, besser wäre wohl "Script Error" oder ähnliches.
Anzupassen im HTML des Widgets, unter:

-
Update: Script-Version 4.9
Neue Log-Script Version 4.9 zeigt nun im JSON für die VIS-Tabelle "Heute/Gestern" an statt dem tatsächlichen Datum, das macht es übersichtlicher.
Das ist optional und für jeden Filter unter LOG_FILTER beijsonDateFormateinstellbar:Wenn das Datum in "Hash-Zeichen (Raute = #)" gesetzt wird, dann wird es durch "Heute" bzw. "Gestern"
ersetzt. Beispiele:
– Aus#DD.MM.# hh:mmwirdHeute 20:35, falls der Log von heute ist.
– Aus#DD.MM.YY# hh:mmwirdGestern 20:35, falls der Log von gestern ist.
– Aus#DD.MM.# hh:mmwird18.02. 20:35, falls der Log nicht von heute oder gestern ist.
– Aus#DD.MM.YY# hh:mmwird18.02.20 20:35, falls der Log nicht von heute oder gestern ist.Bis Version 4.8:

Ab Log-Script-Version 4.9. In
jsonDateFormatist im Beispiel#DD.MM.# hh:mmgesetzt:

Wichtiger Hinweis zum Update von Vorversion:
jsonDateFormatin den Filteroptionen unterscheidet jetzt Groß- und Kleinschreibung des Datumsformats. Das war notwendig und eigentlich vorher schon ein Bug, der noch nicht weiter auffiel. Denn das Script muss erkennen, ob Monat(MM/mm) oder Minute (MM/mm) gemeint ist. Wer also bislang etwajsonDateFormat: 'dd.mm. hh:mm'hatte, muss ändern aufjsonDateFormat: 'DD.MM. hh:mm', oder besser gleich aufjsonDateFormat: #DD.MM.# hh:mm, damit "Heute"/"Gestern" angezeigt wird, falls Logzeile von heute/gestern ist.Update von Vorversion:
Am besten neues Script nehmen und Optionen dort direkt anpassen.Wer das gar nicht möchte:
- jsonDateFormat in allen Filtern anpassen (siehe oben)
- Neue Optionen einfügen, direkt unterhalb von:
/******************************************************************************* * Experten-Konfiguration ******************************************************************************/Folgendes einfügen:
// JSON-Tabelle: ersetze heutiges und gestriges Datum durch 'Heute' bzw. 'Gestern'. // Mittels Hash-Zeichen(#) kann in LOG_FILTER in der Option "jsonDateFormat" definiert werden, // dass heutiges und gestriges Datum durch 'Heute' bzw. 'Gestern' ersetzt wird. // Hier können andere Begriffe statt "Heute"/"Gestern" definiert werden. const TXT_TODAY = 'Heute'; const TXT_YESTERDAY = 'Gestern';- Alles unterhalb von hier ersetzen:
/************************************************************************************************************************* * Ab hier nichts mehr ändern / Stop editing here! *************************************************************************************************************************/ -
Update: Script-Version 4.9
Neue Log-Script Version 4.9 zeigt nun im JSON für die VIS-Tabelle "Heute/Gestern" an statt dem tatsächlichen Datum, das macht es übersichtlicher.
Das ist optional und für jeden Filter unter LOG_FILTER beijsonDateFormateinstellbar:Wenn das Datum in "Hash-Zeichen (Raute = #)" gesetzt wird, dann wird es durch "Heute" bzw. "Gestern"
ersetzt. Beispiele:
– Aus#DD.MM.# hh:mmwirdHeute 20:35, falls der Log von heute ist.
– Aus#DD.MM.YY# hh:mmwirdGestern 20:35, falls der Log von gestern ist.
– Aus#DD.MM.# hh:mmwird18.02. 20:35, falls der Log nicht von heute oder gestern ist.
– Aus#DD.MM.YY# hh:mmwird18.02.20 20:35, falls der Log nicht von heute oder gestern ist.Bis Version 4.8:

Ab Log-Script-Version 4.9. In
jsonDateFormatist im Beispiel#DD.MM.# hh:mmgesetzt:

Wichtiger Hinweis zum Update von Vorversion:
jsonDateFormatin den Filteroptionen unterscheidet jetzt Groß- und Kleinschreibung des Datumsformats. Das war notwendig und eigentlich vorher schon ein Bug, der noch nicht weiter auffiel. Denn das Script muss erkennen, ob Monat(MM/mm) oder Minute (MM/mm) gemeint ist. Wer also bislang etwajsonDateFormat: 'dd.mm. hh:mm'hatte, muss ändern aufjsonDateFormat: 'DD.MM. hh:mm', oder besser gleich aufjsonDateFormat: #DD.MM.# hh:mm, damit "Heute"/"Gestern" angezeigt wird, falls Logzeile von heute/gestern ist.Update von Vorversion:
Am besten neues Script nehmen und Optionen dort direkt anpassen.Wer das gar nicht möchte:
- jsonDateFormat in allen Filtern anpassen (siehe oben)
- Neue Optionen einfügen, direkt unterhalb von:
/******************************************************************************* * Experten-Konfiguration ******************************************************************************/Folgendes einfügen:
// JSON-Tabelle: ersetze heutiges und gestriges Datum durch 'Heute' bzw. 'Gestern'. // Mittels Hash-Zeichen(#) kann in LOG_FILTER in der Option "jsonDateFormat" definiert werden, // dass heutiges und gestriges Datum durch 'Heute' bzw. 'Gestern' ersetzt wird. // Hier können andere Begriffe statt "Heute"/"Gestern" definiert werden. const TXT_TODAY = 'Heute'; const TXT_YESTERDAY = 'Gestern';- Alles unterhalb von hier ersetzen:
/************************************************************************************************************************* * Ab hier nichts mehr ändern / Stop editing here! *************************************************************************************************************************/ -
@Mic sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Ab Log-Script-Version 4.9. In
jsonDateFormatist im Beispiel#DD.MM.# hh:mmgesetzt:

Das ist mal eine geile Farbe , lass das bloß nicht @Negalein Tochter sehen

Ist das Purple?
@Glasfaser sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Das ist mal eine geile Farbe , lass das bloß nicht @Negalein Tochter sehen

Haha, wurde auch bei mir von der Damenwelt aktiv gefordert

Ist das Purple?
Ich veröffentliche alsbald ein kleines Beispielprojekt, nur für dieses Log-Script. Inspiriert (bzw. schamlos übernommen) von @dos1973 - https://forum.iobroker.net/post/358742 und @Glasfaser - siehe https://forum.iobroker.net/post/365355

"Purple" Hintergrund ist gesetzt im Widget als:
linear-gradient(0deg, #2c2a3f, #4f344c, #2c2a3f)