NEWS
[Vorlage] JS: Log-Datei aufbereiten für VIS
-
@Mic sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Beispiel:
Folgendes Script erzeugt eine Log-Zeile, sobald ein Befehl an ein Alexa-Gerät gesprochen wird.Ich würde das Skript noch auf Github legen , sonst geht es hier unter !?
EDIT: und das Filterbeispiel ...
@Negalein .... da hat Mic was tolles für Dich gemacht

@Glasfaser sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
da hat Mic was tolles für Dich gemacht
Ja, definitiv!
Schon geil, was @Mic da für Zauberhände hat. -
@Mic sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Beispiel:
Folgendes Script erzeugt eine Log-Zeile, sobald ein Befehl an ein Alexa-Gerät gesprochen wird.Ich würde das Skript noch auf Github legen , sonst geht es hier unter !?
EDIT: und das Filterbeispiel ...
@Negalein .... da hat Mic was tolles für Dich gemacht

@Glasfaser
@Negalein
Vielen Dank für euer Feedback
@Glasfaser sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Ich würde das Skript noch auf Github legen
Guter Hinweis, erledigt (da ist auch das Filterbeispiel drin): https://github.com/Mic-M/iobroker.logfile-script/blob/master/alexa/alexa-log-script.js
-
@Glasfaser
@Negalein
Vielen Dank für euer Feedback
@Glasfaser sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Ich würde das Skript noch auf Github legen
Guter Hinweis, erledigt (da ist auch das Filterbeispiel drin): https://github.com/Mic-M/iobroker.logfile-script/blob/master/alexa/alexa-log-script.js
Hm, ist das jetzt ein eigenes Skript?
-
@sigi234 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Hm, ist das jetzt ein eigenes Skript?
das kurze Script wird benötigt, um mit den neuen Log-Script die Alexa-History auszulesen.
-
@Negalein sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
@Mic
Ich bekomm folgenden Error und das Log-Script geht auf Pause (Gelb).Leider stellt das Forum hier Regex in Codes nicht korrekt dar, bitte kopiere den Filter noch mal von hier:
https://github.com/Mic-M/iobroker.logfile-script/blob/master/alexa/alexa-log-script.js
(Zeile: "clean:" ersetzen reicht) -
@Negalein sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
@Mic
Ich bekomm folgenden Error und das Log-Script geht auf Pause (Gelb).Leider stellt das Forum hier Regex in Codes nicht korrekt dar, bitte kopiere den Filter noch mal von hier:
https://github.com/Mic-M/iobroker.logfile-script/blob/master/alexa/alexa-log-script.js
(Zeile: "clean:" ersetzen reicht) -
@sigi234 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Muss ich das was ändern
Nein
und es in das Große Skript kopieren
Zeile 18 bis 30 ins Log-Script
-
@Negalein sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
perfekt wie immer

Dem schließe ich mich an!

-
@Glasfaser
@Negalein
Vielen Dank für euer Feedback
@Glasfaser sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Ich würde das Skript noch auf Github legen
Guter Hinweis, erledigt (da ist auch das Filterbeispiel drin): https://github.com/Mic-M/iobroker.logfile-script/blob/master/alexa/alexa-log-script.js
-
@Negalein sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
perfekt wie immer

Dem schließe ich mich an!

-
@Negalein sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
perfekt wie immer

@sigi234 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Dem schließe ich mich an!
Vielen Dank, auch an Sigi für den Alexa-Befehl

-
Dein Beispiel-Projekt würde ich auch noch anheften …
... sonst geht es auch hier unter
@Glasfaser sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Dein Beispiel-Projekt würde ich auch noch anheften …
... sonst geht es auch hier unter
Danke, ist hier dokumentiert, und nun auch verlinkt: https://github.com/Mic-M/iobroker.logfile-script/blob/master/README.md#3-log-ausgaben-im-vis-darstellen
-
Sinn und Zweck dieses Scripts
Der ioBroker loggt alle Aktionen der Adapter und Scripte entsprechend mit, einzusehen in der ioBroker-Administration, linke Seite Menüpunkt "Log".
Dieses Script bietet nun folgendes:- Log im VIS darstellen: Entsprechend gefiltert, also etwa nur Warnungen und Fehler, nur Ausgaben eines bestimmten Adapters, usw.
- Auf bestimmte Log-Ereignisse reagieren
Dabei nimmt das Script jeden neuen Logeintrag des ioBrokers und wendet entsprechend gesetzte Filter an, um den Eintrag dann in den entsprechenden Datenpunkten dieses Scripts abzulegen.
Es stehen auch JSON-Datenpunkte zur Verfügung, mit diesen kann im vis eine Tabelle ausgegeben werden. Z.B. über das Widget 'basic - Table' oder hier im Beispiel über Widget 'materialdesign - Table' (Material Design Widgets werden dafür benötigt).

Über die Filter kann man auch einzelne Geräte-Logs oder JS/Blockly-Logs ausgeben. Beispiel für ein "Garagentor":

Installation / Einrichtung
Ursprünglicher Beitrag von mir vom 18.07.2018:
Hallo,
ich überlege, dass ich per JavaScript die Log-Datei unter "/opt/iobroker/log/iobroker.YYYY-MM-DD.log" z.B. alle paar Sekunden auslese und Warnungen und Fehler in zwei separate Datenpunkte schreibe (Datenpunkt hält dann z.B. die letzten 30 Werte vor). Diese würde ich dann übers vis entsprechend in einer View ausgeben.
Bevor ich das Rad neu erfinde, gibt es schon ein solches Script? Habe nur das hier gefunden: https://forum.iobroker.net/topic/1246/geloest-log-daten-im-vis-anzeigen
Falls das noch keiner erstellt hat (was mich etwas wundern würde, wäre ja praktisch
- auch weil manche Adapter das Log voll müllen, da könnte man dann noch ausfiltern etc.) dann werde ich da selbst was schreiben und hier zur Verfügung stellen.Viele Grüße
Ich überlege gerade wie ich am Besten ein aufklappbares Menü mache da es sicher noch mehr wird.
-
Ich überlege gerade wie ich am Besten ein aufklappbares Menü mache da es sicher noch mehr wird.
@sigi234 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Ich überlege gerade wie ich am Besten ein aufklappbares Menü mache da es sicher noch mehr wird.
Vielleicht über List Widget ...
-
@sigi234 sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Ich überlege gerade wie ich am Besten ein aufklappbares Menü mache da es sicher noch mehr wird.
Vielleicht über List Widget ...
Ich habe das Skript gerade importiert, auf meine Umgebung angepasst und gestartet.
Ich erhalte folgedn Fehlermeldung:
javascript.0 2020-03-02 07:41:26.748 error (3135) at Script.runInContext (vm.js:133:20) javascript.0 2020-03-02 07:41:26.748 error (3135) at script.js.java.abfragen.log_vis_neu:540:1 javascript.0 2020-03-02 07:41:26.748 error (3135) at init (script.js.java.abfragen.log_vis_neu:544:5) javascript.0 2020-03-02 07:41:26.748 error (3135) ReferenceError: onLogUnregister is not defined javascript.0 2020-03-02 07:41:26.748 error (3135) ^ javascript.0 2020-03-02 07:41:26.748 error (3135) onLogUnregister(G_LogHandler); javascript.0 2020-03-02 07:41:26.748 error (3135) script.js.java.abfragen.log_vis_neu: script.js.java.abfragen.log_vis_neu:544 -
@ple sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Vielleicht hast du eine Idee, wie ich dein Script nutzen kann als Meldearchiv.
Eigentlich will ich mir in einer Table nur anzeigen lassen, wenn ein Aktor auf true geht, oder sonst was.
Ähnlich Fensterzähler oder dein Garagentor. Nur soll die Meldung auch wieder weggehen, wenn z.B. dein Garagentor nicht mehr klemmt.
Hast du da vielleicht eine Idee, wie man sowas umsetzen könnte?
Mein rudimentärer Anfang ist hier mal dokumentiert.
https://forum.iobroker.net/topic/30324/array-erstellen-mit-prüfung-für-json-tabelle/9Hi,
das Log-Script ist nicht für deinen Anwendungsfall gedacht, es nimmt ausschließlich die Logs als Quelle. Ebenso ist es ein "Log", daher werden ältere Werte nicht nachträglich angepasst.@Mic sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
@ple sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Vielleicht hast du eine Idee, wie ich dein Script nutzen kann als Meldearchiv.
Eigentlich will ich mir in einer Table nur anzeigen lassen, wenn ein Aktor auf true geht, oder sonst was.
Ähnlich Fensterzähler oder dein Garagentor. Nur soll die Meldung auch wieder weggehen, wenn z.B. dein Garagentor nicht mehr klemmt.
Hast du da vielleicht eine Idee, wie man sowas umsetzen könnte?
Mein rudimentärer Anfang ist hier mal dokumentiert.
https://forum.iobroker.net/topic/30324/array-erstellen-mit-prüfung-für-json-tabelle/9Hi,
das Log-Script ist nicht für deinen Anwendungsfall gedacht, es nimmt ausschließlich die Logs als Quelle. Ebenso ist es ein "Log", daher werden ältere Werte nicht nachträglich angepasst.Das Script ist dahingehend auch super, da man die Logs auch durchsehen kann.
Ich frage mich gerade, wie man das Script umbauen könnte, dass die Log zwar wie jetzt geschrieben werden und dieses auch in einem Json gepackt wird, jedoch eine Bediungung eintritt, die das löschen auslöst auch wieder aus der Json entfernt.Vorstellen könnte ich mir das so, Fenster links ist offen, ich schreiben ein Log, Fenster wieder zu, ich überprüfe die Json, finde "Fenster links ist offen" und lösche das aus der Json. Das schreiben und Filtern dürfte ja mit deinem Script so funktionieren, nur das löschen wäre dahingehend interessant.
Vielleicht wäre das ein Extra Script, was die Json dahingehend nachträglich bearbeitet, nur leider reichen meine Kenntnisse dafür leider nicht aus.

Vielleicht hast du beim Kaffee eine ruhige Minute, wie man das vielleicht umsetzen könnte, den Kaffee gebe ich dir gerne aus







