NEWS
[Vorlage] JS: Log-Datei aufbereiten für VIS
-
Richtig , geht nur mit dem Log-Script !!
Die Anzahl kommt als Beispiel dann hierher .
Alarmzustand ({v:0_userdata.0.Log-Script.logAlarmzustand.logJSONcount;v})
-
@Glasfaser sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Richtig , geht nur mit dem Log-Script !!
würde es so im Script passen?
{ id: 'Alexa_Nega', filter_all: ['alexa2.0.History.summary'], filter_any: ['', '',], blacklist: ['', '',], clean: ['', '',], merge: true, sortDescending: true, jsonDateFormat: '#DD.MM.# hh:mm', jsonColumns: ['source','date','msg'], jsonLogLength: 100, jsonMaxLines: 10, jsonCssToLevel: true, },
-
@Negalein sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
{ id: 'Alexa_Nega', filter_all: ['alexa2.0.History.summary'], filter_any: ['', '',], blacklist: ['', '',], clean: [/script\.js\.[^:]*: /, '', ''], merge: false, sortDescending: true, jsonDateFormat: '#DD.MM.# hh:mm', jsonColumns: ['source','date','msg'], jsonLogLength: 100, jsonMaxLines: 10, jsonCssToLevel: true, },
Merge auf false , damit alles aufgelistet wird.
Mit dem jsonColumns kannst du die Anzeige noch Filtern.
Den Rest mußt du ausprobieren bzw. an deine Bedürfnisse anpassen -
@Glasfaser sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Merge auf false , damit alles aufgelistet wird.
Mit dem jsonColumns kannst du die Anzeige noch FilternDanke, probier ich gleich aus
-
@Glasfaser sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Merge auf false , damit alles aufgelistet wird.
Irgendwas passt noch nicht
mit History geloggt
Mit Script geloggt
-
zeige mal die Log Ausgabe von ioBroker , wenn die Meldung kommt
-
@Negalein
Leerzeichen bei Knopftext ? -
Ist schon richtig , er hat ein _ und die Ausgabe 0 ist auch im Button
-
@Glasfaser sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
zeige mal die Log Ausgabe von ioBroker , wenn die Meldung kommt
alexa2.0 2020-02-26 22:43:10.618 debug (21658) State changed alexa2.0.History.json: {"val":"{\"name\":\"Wohnzimmer\",\"serialNumber\":\"XXXXXXXXXXXXX\",\"summary\":\"stopp\",\"creationTime\":1582753389857,\"status\":\"SUCCESS\",\"domain
der aktuelle von 22:43
2020-02-26 22:43:10.618 - [34mdebug[39m: alexa2.0 (21658) State changed alexa2.0.History.json: {"val":"{\"name\":\"Wohnzimmer\",\"serialNumber\":\"XXXXXXXXXXXXX\",\"summary\":\"stopp\",\"creationTime\":1582753389857,\"status\":\"SUCCESS\",\"domainApplicationId\":\"\",\"domainApplicationName\":\"\",\"cardContent\":\"\",\"card\":\"\",\"answerText\":\"\"}","ack":true,"ts":1582753390596,"q":0,"from":"system.adapter.alexa2.0","user":"system.user.admin","lc":1582753390596} 2020-02-26 22:43:10.803 - [34mdebug[39m: alexa2.0 (21658) Alexa-Remote WS-MQTT: Command PUSH_VOLUME_CHANGE: { "destinationUserId": "XXXXXXXXXXXXX", "dopplerId": { "deviceType": "XXXXXXXXXXXXX", "deviceSerialNumber": "XXXXXXXXXXXXX" }, "volumeSetting": 50, "isMuted": false }
-
-
@Glasfaser @Mic
so schaut die RAW vonalexa2.0.History.summary
aus.
Vielleicht hilft euch das.{ "from": "system.adapter.alexa2.0", "ts": 1582753508665, "user": "system.user.admin", "common": { "name": "summary", "role": "text", "type": "string", "write": false, "read": true, "custom": { "history.0": { "enabled": true, "changesOnly": true, "debounce": "30000", "maxLength": "960", "retention": "7948800", "changesRelogInterval": 0, "changesMinDelta": 0, "aliasId": "" }, "telegram.0": null, "sourceanalytix.0": null, "upnp.0": null, "virtualpowermeter.0": null, "iqontrol.0": null, "influxdb.0": null } }, "native": {}, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 }, "_id": "alexa2.0.History.summary", "type": "state" }
-
Man könnte mit einem Script die Aktualisierung vom Datenpunkt "alexa2.0.History.summary" mit dem Inhalt in einen anderen Datenpunkt aktualisieren und diesen dann loggen .
Aber warte mal ... da wird schon Mic eine Idee dazu haben .
EDIT :
[34mdebug[39m: alexa2.0 (21658) State changed alexa2.0.History.json: {"val"
ist nur ein Log für History , nicht der Log Zustand vom Datenpunkt "alexa2.0.History.summary.
-
@Glasfaser sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
ist nur ein Log für History , nicht der Log Zustand vom Datenpunkt "alexa2.0.History.summary.
hier hab ich jetzt den von alexa2.0.history.summary gefunden.
2020-02-26 22:43:10.606 - [34mdebug[39m: alexa2.0 (21658) State changed alexa2.0.History.summary: {"val":"stopp","ack":true,"ts":1582753390595,"q":0,"from":"system.adapter.alexa2.0","user":"system.user.admin","lc":1582753390595}
-
@Mic Hallo Mic, tolle Arbeit. Klappt problemlos.
-
Warte bis sich Mic meldet ... ich weiß nicht wie man die internen Log Ausgabe Filteren sollte .
Ich denke eher das es nur mit einen extra Script geht -
@Mic said in [Vorlage] JS: Log-Datei aufbereiten für VIS:
@Glasfaser sagte in [Vorlage] JS: Log-Datei aufbereiten für VIS:
Du Schlingel ( Künstler ) ,dachte auch wie @Negalein es wäre das Top App Bar Menue .
Ist dir sehr gut gelungenHaha.
Danke@ Alle
Denkt auch daran, bestimmte Log-Ereignisse in anderen Views damit darstellen zu können. Also z.B. An-/Abwesenheiten, Zustandsänderungen von Geräten, usw.
Mit den Filtern ist fast alles möglich, bin da gerne behilflich.
Beispiel Garagentor (ein Javascript liefert hier z.B. die Logs):
Mein Gott, was eine Arbeit.
Ich gucke mir dein Script bereits einige Zeit an, aber verstehe leider nicht viel davon.
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/9
-
EDIT: Oops es gibt ja schon Version 4.9
Das Skript läuft jetzt wunderbar !
-
Hallo, wie kann ich im Menü Links einen neuen Button erstellen mit den DP
{ id: 'all', // Beispiel "all": hier kommen alle Logeinträge rein, keine Filterung filter_all: ['', ''], // wird ignoriert, wenn leer filter_any: ['', ''], // wird ignoriert, wenn leer blacklist: ['', ''], // wird ignoriert, wenn leer clean: ['', '', ''], // wird ignoriert, wenn leer merge: true, sortDescending: true, jsonDateFormat: '#DD.MM.# hh:mm', jsonColumns: ['date','level','source','msg'], // Spaltenreihenfolge für JSON (Tabelle in vis) jsonLogLength: 100, jsonMaxLines: 22, jsonCssToLevel: true, },
-
-
@Glasfaser
warst etwas schneller