Ankündigung

Einklappen
Keine Ankündigung bisher.

Support-Thread für das Backend-Plugin

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Alternativ, wenn man die Ausgaben nicht haben möchte: auskommentieren:

    Code:
    loggers:
    #     cherrypy.access:
    #         handlers: [shng_details_file]
    #         level: INFO
    #     cherrypy.error:
    #         handlers: [shng_details_file]
    #         level: INFO 
     [FONT=Arial][/FONT]
    Viele Grüße
    Martin

    There is no cloud. It's only someone else's computer.

    Kommentar


      Zitat von Msinn Beitrag anzeigen
      Alternativ, wenn man die Ausgaben nicht haben möchte: auskommentieren:
      sind doch per default auskommentiert; hilft aber nicht:

      Code:
      2018-08-26  21:44:41 INFO     lib.logic         Start Logics
      2018-08-26  21:44:41 INFO     lib.shyaml        Loading '/usr/local/smarthome/lib/env/logic.yaml' to 'OrderedDict'
      2018-08-26  21:44:41 INFO     lib.shyaml        Loading '/usr/local/smarthome/etc/logic.yaml' to 'OrderedDict'
      2018-08-26  21:44:41 INFO     lib.shyaml        Loading '/usr/local/smarthome/scenes/Terrasse.StartParty.yaml' to 'dict'
      2018-08-26  21:44:41 INFO     lib.shyaml        Loading '/usr/local/smarthome/scenes/Terrasse.EndeParty.yaml' to 'dict'
      2018-08-26  21:44:41 INFO     lib.plugin        Start plugins
      2018-08-26  21:44:41 INFO     lib.shyaml        Loading '/usr/local/smarthome/etc/plugin.yaml' to 'OrderedDict'
      2018-08-26  21:44:41 INFO     plugins.simulation Starting Simulation
      2018-08-26  21:44:41 INFO     lib.plugin        Start of plugins finished
      2018-08-26  21:44:48 INFO     logics.hello      Hello World!
      2018-08-26  21:45:49 INFO     lib.shyaml        Loading '/usr/local/smarthome/etc/logic.yaml' to 'OrderedDict'
      2018-08-26  21:45:50 INFO     cherrypy.access.1908026832 192.168.178.21 - - [26/Aug/2018:21:45:50] "GET /backend/logics.html HTTP/1.1" 200 58135 "http://192.168.178.42:8383/backend/system.html" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:45:59 INFO     lib.shyaml        Loading '/usr/local/smarthome/etc/logic.yaml' to 'OrderedDict'
      2018-08-26  21:46:00 INFO     cherrypy.access.1908026832 192.168.178.21 - - [26/Aug/2018:21:46:00] "GET /backend/logics_view.html?file_path=/usr/local/smarthome/logics/Abend3.py&logicname=Abend3 HTTP/1.1" 200 13972 "http://192.168.178.42:8383/backend/logics.html" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:00 INFO     cherrypy.access.1908026832 192.168.178.21 - - [26/Aug/2018:21:46:00] "GET /backend/items.json?mode=list HTTP/1.1" 200 6468 "http://192.168.178.42:8383/backend/logics_view.html?file_path=/usr/local/smarthome/logics/Abend3.py&logicname=Abend3" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:03 INFO     lib.shyaml        Loading '/usr/local/smarthome/etc/plugin.yaml' to 'OrderedDict'
      2018-08-26  21:46:04 INFO     cherrypy.access.1908026832 192.168.178.21 - - [26/Aug/2018:21:46:04] "GET /backend/plugins.html HTTP/1.1" 200 56553 "http://192.168.178.42:8383/backend/logics_view.html?file_path=/usr/local/smarthome/logics/Abend3.py&logicname=Abend3" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:04 INFO     cherrypy.access.1977679088 192.168.178.21 - - [26/Aug/2018:21:46:04] "GET /gstatic/img/plugin_system.svg HTTP/1.1" 200 74430 "http://192.168.178.42:8383/backend/plugins.html" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:04 INFO     cherrypy.access.1977679088 192.168.178.21 - - [26/Aug/2018:21:46:04] "GET /gstatic/img/plugin_web.svg HTTP/1.1" 200 11575 "http://192.168.178.42:8383/backend/plugins.html" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:04 INFO     cherrypy.access.1977679088 192.168.178.21 - - [26/Aug/2018:21:46:04] "GET /gstatic/img/plugin_protocol.svg HTTP/1.1" 200 11776 "http://192.168.178.42:8383/backend/plugins.html" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:04 INFO     cherrypy.access.1908026832 192.168.178.21 - - [26/Aug/2018:21:46:04] "GET /backend/static/img/html.svg HTTP/1.1" 200 23344 "http://192.168.178.42:8383/backend/plugins.html" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:10 INFO     cherrypy.access.1984881584 192.168.178.21 - - [26/Aug/2018:21:46:10] "GET /database/ HTTP/1.1" 200 33027 "http://192.168.178.42:8383/backend/plugins.html" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:10 INFO     cherrypy.access.1977679088 192.168.178.21 - - [26/Aug/2018:21:46:10] "GET /gstatic/bootstrap-datepicker/dist/css/bootstrap-datepicker.min.css HTTP/1.1" 200 15731 "http://192.168.178.42:8383/database/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:10 INFO     cherrypy.access.1977679088 192.168.178.21 - - [26/Aug/2018:21:46:10] "GET /gstatic/bootstrap-datepicker/dist/locales/bootstrap-datepicker.de.min.js HTTP/1.1" 200 517 "http://192.168.178.42:8383/database/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:10 INFO     cherrypy.access.1977679088 192.168.178.21 - - [26/Aug/2018:21:46:10] "GET /gstatic/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fr.min.js HTTP/1.1" 200 536 "http://192.168.178.42:8383/database/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:10 INFO     cherrypy.access.1984881584 192.168.178.21 - - [26/Aug/2018:21:46:10] "GET /database/static/img/plugin_logo.png HTTP/1.1" 200 25825 "http://192.168.178.42:8383/database/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:20 INFO     cherrypy.access.1984881584 192.168.178.21 - - [26/Aug/2018:21:46:20] "GET /database/?action=item_details&item_id=2&item_path=Pool.Istwerte.Luft HTTP/1.1" 200 149115 "http://192.168.178.42:8383/database/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
      2018-08-26  21:46:43 INFO     cherrypy.access.1984881584 192.168.178.21 - - [26/Aug/2018:21:46:43] "POST /database/?action=item_details&item_id=2&item_path=Pool.Istwerte.Luft HTTP/1.1" 200 149115 "http://192.168.178.42:8383/database/?action=item_details&item_id=2&item_path=Pool.Istwerte.Luft" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"

      Kommentar


        Dann hast Du Dein Logging nicht wie in der vorgeschlagen konfiguriert.

        Um da weiter helfen zu können gibt es zwei Möglichkeiten:

        1. Du konfigurierst das Logging analog der Dokumentation (http://www.smarthomeng.de/user/konfi...practices.html)

        2. Du postest Deine gesamte logging.yaml und ich schaue mir das in den kommenden Tagen mal an.

        Viele Grüße
        Martin

        There is no cloud. It's only someone else's computer.

        Kommentar


          Ich habe es ja anhand der Doku konfiguriert, soweit ich es verstehen kann.
          diese cherrypy.access Meldungen kommen nur, wenn ich irgend etwas im backend mache.
          und alle Änderungen die ich hierzu in der logging.yaml mache, erscheinen nicht im backend.

          logging1.JPG
          Angehängte Dateien

          Kommentar


            Dass die Einträge im Log landen, liegt daran, dass Dein root Logger auf INFO steht und nicht auf WARNING. Dann wird über den root Logger alles was bis zum Level INFO geht in das entsprechende File geschrieben.

            was Du mit dem letzen Satz meinst verstehe ich nicht.

            Die Cherrypy Log Einträge kommen übrigens nicht nur aus dem Backend sondern auch aus allen Webinterfaces anderer Plugins.
            Zuletzt geändert von Msinn; 27.08.2018, 18:48.
            Viele Grüße
            Martin

            There is no cloud. It's only someone else's computer.

            Kommentar


              wenn ich den root logger auf WARNING setze erscheinen überhaupt keine INFO Meldungen mehr.
              ich dachte man könnte mit speziellen Definitionen im logging.yaml einzelne logger steuern.

              mit meinem letzten Satz meinte: egal was ich an den beide cherrypy Definitionen im yaml ändere, es hat keine Auswirkungen.

              Früher war das logging so einfach; jetzt gibt es hunderte Schrauben zum Drehen, aber das was man haben möchte bekommt man damit nicht.
              ( die Diskussion hatten wir auch schon mal )

              Ich versuche es nochmal mit dem WARNING im root logger.
              m.E. kam da zu wenig; kann sich aber verbessert haben.

              danke Wil

              Kommentar


                mit WARNING verschwindet fast alles aus den logs, auch meine eigenen Meldungen aus meinen Logiken.
                Irgendwann werde das vielleicht mal verstehen und auch dafür eine Lösung finden.

                Kommentar


                  Deine eigenen Meldungen kannst Du in eine eigene Datei lenken. Genau das ist in der Doku zum Logging auch beschrieben, da der root Logger nunmal dieses Verhalten an den Tag legt.

                  Du kannst in der ../etc/logging.yaml folgendes machen:

                  2 Handler einrichten:
                  - einen, der eine Logdatei schreibt in die nur WARNINGs, ERRORs und CRITICALs kommen
                  - einen, der eine Logdatei schreibt in die alle Details kommen, die du Loggen möchtest.

                  Dann hast Du ein Fehlerlog, wo Du schnell siehst ob etwas wichtiges schief lief und ein Log mit Deinen Infos. Wenn Du aus Deiner Logik dann z.B. eine WARNING loggst, wird der Eintrag in beiden Dateien erscheinen.

                  Code:
                  handlers:
                      shng_warnings_file:
                          class: logging.handlers.TimedRotatingFileHandler
                          formatter: shng_simple
                          level: WARNING
                          utc: false
                          when: midnight
                          backupCount: 7
                          filename: ./var/log/smarthome-warnings.log
                          encoding: utf8
                  
                      shng_details_file:
                          class: logging.handlers.TimedRotatingFileHandler
                          formatter: shng_simple
                          level: DEBUG
                          utc: false
                          when: midnight
                          backupCount: 7
                          filename: ./var/log/smarthome-details.log
                          encoding: utf8
                  Den Root-Logger auf den Level setzen, der für das Error-Log passend ist und in die Warnings-Datei lenken. Für die meisten wird das WARNING sein:

                  Code:
                  root:
                      level: WARNING
                      handlers: [shng_warnings_file]
                  Nun die Logger einrichten, für die Teile von SmartHomeNG für die Du Details loggen möchtest und in die Details-Datei lenken.
                  Code:
                  loggers:
                      plugins.sample_plugin_1_5:
                          handlers: [shng_details_file]
                          level: INFO
                  
                      logics.testlogic3:
                          handlers: [shng_details_file]
                          level: DEBUG
                  
                      plugins.mqtt:
                          handlers: [shng_details_file]
                          level: WARNING
                  In Dein Details-Log würden nun die Logausgaben aus dem sample_plugin_1_5 die den Level INFO oder höher haben geloggt und es würden die Logausgaben der Logik testlogic3 die den Level DEBUG oder höher haben geloggt. Weiterhin würden die Logausgaben aus dem mqtt die den Level WARNING oder höher haben geloggt.
                  Viele Grüße
                  Martin

                  There is no cloud. It's only someone else's computer.

                  Kommentar


                    Feature Wunsch

                    Eine Frage, könnte man in der nächsten version des Backends noch zwei Features einbauen?

                    1. Könnte man auch die persistenten Variablen im Backend darstellen?
                    2. Wenn man eine Logik anlegt, werden einem beim eingeben des Python Codes Items vorgeschlagen. Könnte man dieses Feature auch beim watch_item Eingabefeld einfügen?

                    Kommentar


                      2 ist bereits umgesetzt. 1 gibts teilweise in den webifs der plugins

                      Kommentar


                        Ich glaube Schuma meint die persistenten Variablen in Logiken.

                        und ja: 2. gib es bereits.
                        Viele Grüße
                        Martin

                        There is no cloud. It's only someone else's computer.

                        Kommentar


                          Zitat von Msinn Beitrag anzeigen
                          Ich glaube Schuma meint die persistenten Variablen in Logiken.
                          Genau, die aus den Logiken.

                          Zu 2.: Perfekt :-)

                          Kommentar

                          Lädt...
                          X