Ankündigung

Einklappen
Keine Ankündigung bisher.

Logik anpassen via Backend Server

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

    #31
    sorry,

    schon wieder beschreibt Ihr die 100.000 Möglichkeiten, die es gibt. Toll für die Freaks die sich damit tagelang auseinander setzen wollen.

    Macht doch bitte mal einen konkreten Konfigurationsvorschlag und liefert ein/zwei funktionsfähige Beispiele aus.

    Ich habe es aufgegeben am logging herumzuschrauben und lasse alles beim Standard.

    Mit den vielen Meldungen vom backend Server habe ich mich schon abgefunden; deshalb benutze ich den lieber weniger, damit er das log nicht versaut.

    Seit der v1.4 nimmt es aber leider Überhand und ich beklage mich nicht über DEBUG Meldungen, sondern es sind die vielen unnützen INFO Meldungen, die mich stören. Zudem kommen sie ja wohl sporadisch und werden durch irgendetwas ausgelöst. Ich suche ja zunächst nur Erklärungen hierfür.

    Ich habe "Msinn" schon versprochen, dass ich mir das "Best Practise" nach den Feiertagen nochmal vornehme.
    Vielleicht kriege ich es doch einmal hin. Die SmartHomeNG Dokumentation ist ja um Welten besser geworden.

    Aber eigentlich sollte das meiste Standardmäßig passen, ohne dass man schrauben muss.

    Ich wünsche Euch trotzdem allen geruhsame Feiertage und werde jetzt auch versuchen etwas friedlicher zu sein.

    LG Wil

    Kommentar


      #32
      whe der normale user nutzt aber in der regel die software und fuchst sich nicht in das log ;-) bei dir scheint das anders zu sein -da ist das log wichtiger als die anwendung .

      filter doch im backend log-viewer nur auf die errors oder schau via smartvisu aufs log. da kriegst du auch nur das wesentliche (errors) mit.. als ich damals angefangen habe, habe ich das ähnlich gemacht..

      mit 1.4 ist im übrigens seitens des backends nicht wirklich mehr an logoutputs dazugekommen. die seiten sind im wesentlichen die die es auch in 1.3 schon gab..

      wenns was hilft, hier ist meine logging.yaml - ich bin dabei nach Msinn's anleitung vorgegangen und nach 15 minuten hat alles gepasst. cherrypy landet neben anderem im additional log:
      Code:
      version: 1
      disable_existing_loggers: False
      formatters:
        busmonitor_format:
          format: '%(asctime)s;%(message)s;'
          datefmt: '%Y-%m-%d;%H:%M:%S'
        simple:
          format: '%(asctime)s %(levelname)-8s %(name)-16s %(message)s'
          datefmt: '%Y-%m-%d  %H:%M:%S'
        funcname:
          format: '%(asctime)s %(levelname)-8s %(name)-16s %(funcName)-16s %(message)s'
          datefmt: '%Y-%m-%d  %H:%M:%S'
        detail:
          format: '%(asctime)s %(levelname)-8s %(module)-12s %(threadName)-12s %(message)s -- %(filename)s:%(funcName)s:%(lineno)d'
          datefmt: '%Y-%m-%d %H:%M:%S'
      handlers:
        console:
          class: logging.StreamHandler
          formatter: detail
          stream: ext://sys.stdout
      
        file:
          class: logging.handlers.TimedRotatingFileHandler
          formatter: simple
          level: WARNING
          when: midnight
          backupCount: 7
          filename: ./var/log/smarthome.log
          encoding: utf8
      
      
        file_additional:
            class: logging.handlers.TimedRotatingFileHandler
            formatter: funcname
            level: DEBUG
            when: midnight
            backupCount: 7
            filename: ./var/log/smarthome-additional.log
            encoding: utf8
      
      loggers:
          __main__:
              level: DEBUG
              handlers: [file]
          scapy:
             level: ERROR
             handlers: [file_additional]
          cherrypy.access:
             level: DEBUG
             handlers: [file_additional]
          cherrypy.error:
             level: DEBUG
             handlers: [file_additional]
          dwd_weather:
             level: ERROR
             handlers: [file_additional]
          plugins:
             level: ERROR
             handlers: [file_additional]
          plugins.backend:
             level: DEBUG
             handlers: [file_additional]
          plugins.blockly:
             level: DEBUG
             handlers: [file]
          plugins.smarttv:
             level: ERROR
             handlers: [file_additional]
          plugins.knx:
             level: WARNING
             handlers: [file_additional]
          plugins.rest:
             level: DEBUG
             handlers: [file_additional]
          plugins.eta_pu:
             level: ERROR
             handlers: [file_additional]
          plugins.dwd:
             level: ERROR
             handlers: [file_additional]
          plugins.avm:
             level: ERROR
             handlers: [file_additional]
          plugins.enigma2:
             level: ERROR
             handlers: [file_additional]
          plugins.nokia_health:
             level: DEBUG
             handlers: [file]
          plugins.network:
             level: ERROR
             handlers: [file_additional]
          plugins.database:
             level: DEBUG
             handlers: [file]
          enigma2:
             level: ERROR
             handlers: [file_additional]
          enigma2.vusolo2:
             level: ERROR
             handlers: [file_additional]
          enigma2.vusolo4k:
             level: ERROR
             handlers: [file_additional]
          plugins.wettercom:
             level: DEBUG
             handlers: [file_additional]
          plugins.wundergrund:
             level: DEBUG
             handlers: [file_additional]
          plugins.avdevice:
             level: ERROR
             handlers: [file_additional]
      
      root:
          level: DEBUG
          handlers: [file]
      Zuletzt geändert von psilo; 19.12.2017, 19:59.

      Kommentar


        #33
        danke, das ist doch ein erster Ansatz. das werde ich dann Morgen mal testen.

        bei den neuen log-Einträgen in der v1.4 meine ich nicht den Backend Server; da ist m.E. alles beim alten geblieben, aber auch viel überflüssiges Zeugs im INFO Level.
        seit v1.4 tauchen sporadisch solche Dinge auf. Das sieht gefährlich aus; wenn es nichts zu bedeuten hat, weshalb erscheint denn das ganze Zeugs.
        Code:
        2017-12-19  10:04:38 INFO     CP Server Thread-22 Backend: Language 'de': Translation for 'Logfile speichern' is missing!
        2017-12-19  10:04:38 INFO     CP Server Thread-22 Backend: -> Language 'de': Translation for 'Logfile speichern' is missing
        2017-12-19  10:04:38 INFO     CP Server Thread-22 192.168.178.21 - - [19/Dec/2017:10:04:38] "GET /backend/log_view.html?logfile=smarthome.log HTTP/1.1" 200 24116 "http://smarthome:8383/backend/logging.html" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0"
        2017-12-19  10:04:51 INFO     CP Server Thread-19 Loading '/usr/local/smarthome/etc/plugin.yaml' to 'OrderedDict'
        2017-12-19  10:04:53 INFO     CP Server Thread-19 get_requirements_info: len(_conf) = 8, len(plugin_names) = 8, plugin_names = ['plugins.backend', 'plugins.knx', 'plugins.visu_websocket', 'plugins.visu_smartvisu', 'plugins.sqlite_visu2_8', 'plugins.simulation', 'plugins.hue', 'plugins.network']
        2017-12-19  10:04:53 INFO     CP Server Thread-19 get_requirements_info: req_dict for group base = {'python-dateutil': '>=2.5.3<br/>>=2.5.3 (backend)', 'cherrypy': '>=8.1.2 (backend)', 'jinja2': '>=2.8 (backend)', 'ruamel.yaml': '>=0.13.7,<=0.15', 'ephem': '>=3.7', 'psutil': '==*'}
        2017-12-19  10:04:53 INFO     CP Server Thread-19 get_requirements_info: filepath = /usr/local/smarthome/tests/requirements.txt
        2017-12-19  10:04:53 INFO     CP Server Thread-19 get_requirements_info: req_dict for group test = {}
        2017-12-19  10:04:53 INFO     CP Server Thread-19 get_requirements_info: filepath = /usr/local/smarthome/doc/requirements.txt
        2017-12-19  10:04:53 INFO     CP Server Thread-19 get_requirements_info: req_dict for group doc = {'recommonmark': '==*', 'sphinx': '==*', 'sphinx_rtd_theme': '==*'}
        2017-12-19  10:04:53 INFO     CP Server Thread-19 pypi_json: req_doc_dict {'recommonmark': '==*', 'sphinx': '==*', 'sphinx_rtd_theme': '==*'}
        2017-12-19  10:04:53 INFO     CP Server Thread-19 pypi_json: pypi package: project_name zope.interface, availabe = ['4.4.3']
        2017-12-19  10:04:53 INFO     CP Server Thread-19 pypi_json: sort=4, package['name'] = >zope.interface<
        2017-12-19  10:04:53 INFO     CP Server Thread-19 compare PyPI package zope.interface (for non required):
        2017-12-19  10:04:54 INFO     CP Server Thread-19 pypi_json: pypi package: project_name yolk3k, availabe = ['0.9']
        2017-12-19  10:04:54 INFO     CP Server Thread-19 pypi_json: sort=4, package['name'] = >yolk3k<
        2017-12-19  10:04:54 INFO     CP Server Thread-19 compare PyPI package yolk3k (for non required):
        2017-12-19  10:04:54 INFO     CP Server Thread-19 pypi_json: pypi package: project_name yarl, availabe = ['0.16.0']
        2017-12-19  10:04:54 INFO     CP Server Thread-19 pypi_json: sort=4, package['name'] = >yarl<
        2017-12-19  10:04:54 INFO     CP Server Thread-19 compare PyPI package yarl (for non required):
        2017-12-19  10:04:54 INFO     CP Server Thread-19 pypi_json: pypi package: project_name xmltodict, availabe = ['0.11.0']
        2017-12-19  10:04:54 INFO     CP Server Thread-19 pypi_json: sort=4, package['name'] = >xmltodict<
        2017-12-19  10:04:54 INFO     CP Server Thread-19 compare PyPI package xmltodict (for non required):
        selbstverständlich schau ich ab und zu mal ins log.
        schließlich will ich wissen, ob es meinem System gut geht und alles so funktioniert, wie ich es sein soll.
        aber auch, wer unsinnigerweise mein SD-Karte malträtiert.

        was mich am meisten stört, ist, dass ich die Ursache nicht erkenne.
        es sind ja schließlich INFO Meldungen, die den Anwender über den Zustand informieren sollen und keine DEBUG Infos, die nur ein Entwickler interpretieren kann.

        in der v1.2 waren meine log-files meist 1-2K groß
        in der v1.3 sind sie auf 10-20K gewachsen
        aber die logfiles in der v1.4 sind in deren ersten Tagen mehrere 100K groß.


        Gruß Wil

        Kommentar


          #34
          Stell den level des root Lloggers auf WARNING und guts ists.

          Du fragest ob das System auch für Anwender sei: Ja. Die brauchen nur Warnungen nur Fehlermeldungen!
          Viele Grüße
          Martin

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

          Kommentar


            #35
            whe das loggen der threads dient uns dazu, herauszufinden, ob manche plugins das thread handling unsauber implementieren. das gehört zum aufräumen und verbessern das alten smarthome.py.... da wir nicht jedes plugin bei uns selber laufen haben hilft es wenig, wenn das nur bei uns an ist.

            ansonsten schliesse ich mich da Msinn an...

            und: wir haben mitlerweile den inhalt dieses threads verloren!

            Kommentar


              #36
              ich muss nochmals auf das ursprüngliche Problem hier zurückkommen:
              beim neu laden einer Logik im Backend, wird sie gleich ausgeführt über das symbol rechts in der Liste.
              wenn ich eine Logik im Backend anpasse und "speichern und neu laden" auswähle wird sie nicht ausgeführt.
              Msinn schrieb auch unter #3, das würde sich mit der 1.4 ändern; ist aber nicht, ich nutze natürlich 1.5

              Zitat von psilo Beitrag anzeigen
              Msinn oder bis zum release der 1.4 warten?
              refresh.JPG

              Kommentar


                #37
                Es gilt nach wie vor Post 2 dieses Threads.
                Viele Grüße
                Martin

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

                Kommentar

                Lädt...
                X