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

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

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

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

      @Mic Hallo Mic, tolle Arbeit. Klappt problemlos. 👍 👍 👍

      1 Reply Last reply Reply Quote 1
      • Glasfaser
        Glasfaser @Negalein last edited by Glasfaser

        @Negalein

        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

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

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

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

          @Mic

          Du Schlingel ( Künstler ) ,dachte auch wie @Negalein es wäre das Top App Bar Menue .
          Ist dir sehr gut gelungen 👍

          Haha.
          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):
          g2.png

          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

          Mic 1 Reply Last reply Reply Quote 0
          • A
            aleks-83 last edited by aleks-83

            EDIT: Oops es gibt ja schon Version 4.9 😳

            Das Skript läuft jetzt wunderbar !

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

              @Glasfaser

              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 1 Reply Last reply Reply Quote 0
              • Glasfaser
                Glasfaser @sigi234 last edited by Glasfaser

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

                [{"tpl":"tplVis-materialdesign-Button-State","data":{"oid":"0_userdata.0.Log-Script.all.visView1.whichFilter","g_fixed":true,"g_visibility":false,"g_css_font_text":false,"g_css_background":true,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","buttonStyle":"text","vibrateOnMobilDevices":"50","iconPosition":"left","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis.0/miclog/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis.0/miclog/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis.0/miclog/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"value":"all","buttontext":" All ({v:0_userdata.0.Log-Script.logall.logJSONcount;v})","image":"alert-circle-outline","labelWidth":"","colorPress":"{b:0_userdata.0.Log-Script.all.visView1.whichFilter;b==\"all\" ? \"#ffd71a\" : \"#8f8f8f\"}","class":"leftBarBtn","name":"btnAll"},"style":{"left":"25px","top":"304px","z-index":"50","width":"180px","height":"32px","background-color":"{b:0_userdata.0.Log-Script.All.visView1.whichFilter;b==\"Info\" ? \"#4d4d4d\" : \"#2e2e2e\"}"},"widgetSet":"materialdesign"}]
                

                Negalein sigi234 2 Replies Last reply Reply Quote 1
                • Negalein
                  Negalein Global Moderator @Glasfaser last edited by

                  @Glasfaser
                  warst etwas schneller 🙂

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

                    @Glasfaser
                    @Negalein

                    Danke, hatte ich auch schon fast. Habe aber All eingefügt.

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

                      @sigi234

                      Habe mich auch schon gewundert 😉

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

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

                        @sigi234

                        Habe mich auch schon gewundert 😉

                        javascript.0	2020-02-27 23:34:22.047	error	(12272) script.js.LOG.MIC_Log1: Log-Script-Fehler: Gewählter Filter all, aber Datenpunkt [0_userdata.0.Log-Script.logall.logJSON] ist nicht vorhanden.
                        

                        Erledigt, Fehler weg.

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

                          @Mic

                          nochmals danke für das tolle Script.

                          Kann ich mir in deinem Script auch den Status aller Javascripte (aktiviert, nicht aktiviert, Pause) anzeigen lassen?

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

                            @Negalein
                            Hi. Das Log-Script behandelt wirklich nur Logs, und keine Datenpunkte.
                            Aber ich nutze schon seit längerem ein von mir geschriebenes Script, um die Alexa-History zu loggen und in VIS auszugeben. Also so:
                            log_al.png

                            Falls gewünscht, kann ich das Script gerne veröffentlichen. Gibt einen Datenpunkt, dessen Inhalt dann in VIS als Tabelle ausgegeben wird.

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

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

                              Kann ich mir in deinem Script auch den Status aller Javascripte (aktiviert, nicht aktiviert, Pause) anzeigen lassen?

                              Hi,
                              das geht so leider nicht, da das Log-Script ausschließlich die Logs als Quelle nimmt. Für deine Anforderung am besten einen neuen Thread öffnen ☺

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

                                @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/9

                                Hi,
                                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.

                                P 1 Reply Last reply Reply Quote 0
                                • Negalein
                                  Negalein Global Moderator @Mic last edited by Negalein

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

                                  Aber ich nutze schon seit längerem ein von mir geschriebenes Script, um die Alexa-History zu loggen und in VIS auszugeben.
                                  Falls gewünscht, kann ich das Script gerne veröffentlichen. Gibt einen Datenpunkt, dessen Inhalt dann in VIS als Tabelle ausgegeben wird.

                                  Cool

                                  Ja bitte

                                  PS: kannst du mir dann einen Export von obigem Screenshot auch mitgeben?

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

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

                                    Cool

                                    Ja bitte

                                    Gerne. Siehe hier: https://forum.iobroker.net/topic/30657/vorlage-alexa-history-befehle-in-vis-anzeigen

                                    1 Reply Last reply Reply Quote 2
                                    • Negalein
                                      Negalein Global Moderator last edited by Negalein

                                      @Mic

                                      Ich schaffe es nicht das Design der Tabelle in mein Projekt zu übernehmen.

                                      Das komplette Widget hab ich von deinem Projekt exportiert und bei mir wieder eingefügt.
                                      Dann in deinem Projekt das Widget markiert und unter CSS/Global den Code 1:1 in meinem Projekt beim Widget unter CSS/Global eingefügt.

                                      Trotzdem sind bei mir die Zeilen anders.

                                      EDIT:
                                      Kommando retour.
                                      Ich hab das falsche CSS kopiert.

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        mguenther last edited by

                                        Ich weiß nicht, ob ich alles richtig verstehe. Wenn ich einen Log-File zu einem Adapter auswerten möchte, dann lege ich im Skript z.B. das an:

                                           {
                                            id:             'Modbus',
                                            filter_all:     [/modbus.0/],
                                            filter_any:     [' - error: ', ' - warn: ',  ' - info: '],  // entweder error oder warn
                                            blacklist:      ['', '', ''],
                                            clean:          ['', '', ''],
                                            merge:          true,
                                            sortDescending: true,
                                            jsonDateFormat: '#DD.MM.# hh:mm',
                                            jsonColumns:    ['date','level','source','msg'],
                                            jsonLogLength:  100,
                                            jsonMaxLines:   100,
                                            jsonCssToLevel: false,
                                          },
                                        

                                        und schreibe das z.B. unter das Beispiel im Skript für homematic. Es werden auch die folgenden Datenpunkte angelegt.
                                        c5e1b11b-9ecb-4023-ba7e-c8b2b2c45b6d-grafik.png

                                        Jetzt werte ich das in der VIS separat aus, allerdings scheine ich beim Layout anpassen an meine VIS etwas geändert zu haben - ich habe keine farbigen Einträge mehr. Was muss ich denn wo entsprechend ändern?
                                        97e798d7-c7bc-483b-9a44-eda8e885d871-grafik.png

                                        danke
                                        Marcus

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

                                          @mguenther

                                          Wenn du von Ihm das View in dein Projekt kopierst , dann mußt du auch die CCS kopieren .

                                          CSS:

                                          
                                          
                                          /******************************************
                                                         — LINKS —
                                          ******************************************/
                                          .noteProject a:link { color: #b8b8b8; } /* unvisited link */
                                          .noteProject a:visited { color: #b8b8b8; } /* visited link */
                                          .noteProject a:hover { color: #ffffff; } /* mouse over link */
                                          .pnoteProjecte a:active { color: #ffffff; } /* selected link */
                                          hr { border:0; height: 1px; background-color:#b8b8b8 }
                                          
                                          
                                          /******************************************
                                                         — TABLE —
                                          ******************************************/
                                          
                                          .tableLog .log-warn { color: orange;}
                                          .tableLog .log-error { color: red;}
                                          .tableLog .log-info { color: yellow;}
                                          
                                          
                                          /* Word-Break anwenden */
                                          .tableLog {
                                             word-break: break-word; 
                                          }
                                          
                                          
                                          
                                          /* Jede zweite Tabellenzeile formatieren */
                                          .tableLog tr:nth-child(even) {
                                             background:rgba(56,46,67,0.1);
                                          }
                                          
                                          /* Rand unterhalb Tabellenüberschrift */
                                          .tableLog .mdc-data-table__header-row {
                                             border-bottom: 1px solid #434343;
                                          }
                                          
                                          /* Zeilenhöhe und Abstände */
                                          .tableLog .mdc-data-table__cell  {
                                             line-height:1.3em;
                                             padding-top: 6px;
                                             padding-bottom: 6px;
                                          }
                                          
                                          
                                          /* Scrollbar */
                                          .tableLog::-webkit-scrollbar { width: 15px; }
                                          .tableLog::-webkit-scrollbar-track { background: transparent; }
                                          .tableLog::-webkit-scrollbar-thumb { background-color: rgba(63,64,71,1); border-radius: 7px; border-color: rgba(63,64,71,1); }
                                          .tableLog::-webkit-scrollbar-thumb:hover { background: #8f8f8f; }
                                          
                                          
                                          /******************************************
                                                         — BUTTONS —
                                          ******************************************/
                                          
                                          
                                          .leftBarBtn .materialdesign-button-body {
                                             justify-content: left !important; 
                                             margin-left: 0.9em;
                                          }
                                          

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

                                            @Glasfaser
                                            das hatte ich gesucht... ich bin blöd, bei mir stand die ganze Zeit CSS auf global und deswegen hatte ich es nicht gesehen
                                            danke

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            429
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

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