Ankündigung

Einklappen
Keine Ankündigung bisher.

Logger zu loggt zu viel

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

    Logger zu loggt zu viel

    Vor ein paar Wochen habe ich neues Feature gefunden, nämlich, dass ich die Logger direkt im Web-Interface konfigurieren kann. Nun ist es allerdings so, dass ich festgstellt habe, dass in "smarthome-datails" jeden Tag Tonnen an Daten geloggt werden. Das sind eigentlich alles INFO-Logs, wobei aber vorne dennoch DEBUG steht.

    Code:
    2023-04-07  19:38:55 DEBUG    plugins.knx         write request from 1.1.45 to 3/0/1 with '0c54' and DPT 9
    Die Plugin-Logger sind auch auf DEBUG eingestellt. Es sind aber meiner Meinung nach INFO-Ausgaben und keine DEBug, die da geloggt werden.

    #2
    Das von Dir beschriebene Verhalten ist das Standardverhalten des Python Logging Systems.

    Die Konfiguration in der Admin GUI hat die selben Auswirkungen, als wenn Du den Level des entsprechenden Loggers direkt in der logging.yaml anpassen würdest, was die Admin GUI tut. Sie stellt nur gleichzeitig den aktiven Loglevel um, so dass Du SmartHomeNG nicht neu starten musst, damit der geänderte Loglevel wirksam wird.

    Um zu verstehen, was im Detail passiert, solltest Du Dir bei Interesse die Python Dokumentation zum Logging System zu Gemüte führen.

    Hier nur kurz einige Details/Fakten zum Logging System:

    Der Level, den Du bei einem Handler angibst legt fest, welches der minimale Loglevel ist, der durch den Handler in die Datei geschrieben wird (egal aus welchem Logger der Log Eintrag kommt). Der level muss beim smarthome-datails Handler also auf DEBUG stehen, weil Du sonst nie DEBUG Einträge in die Datei schreiben könntest. Wenn Du da z.B. ERROR eintragen würdest, würden nur ERRORs in smarthome-datails geloggt werden.

    Der Level eines Loggers (z.B. Plugin-Loggers) legt den minimalen Loglevel fest, der durch diesen Logger an die definierten Handler gegeben wird. Wenn Du diesen auf DEBUG setzt, werden alle Log Einträge, die das Plugin schreiben möchte auch an die Handler weiter gegeben (also DEBUG. INFO, NOTICE, WARNING und CRITICAL).

    Wenn Du alle Plugin Logger auf DEBUG stellst, ertrinkst Du deshalb natürlich in Einträgen.

    Normalerweise sollten die Level aller definierten Plugin-Loggel deshalb auf NOTICE stehen. Nur für einzelne Plugins bei denen Dich weitergehende Informationsn inteeressieren, solltest Du sie auf INFO setzen. Der Loglevel DEBUG sollte nur nur Fehlersuche gesetzt werden (und auch nur bei dem Plugin, welches man gerade debuggen möchte).

    Ob eine Logmeldung nun mit dem Level INFO oder DEBUG geschrieben wird, hängt davon ab, wie der Plugin-Autor den Inhalt einschätzte. Das kann sich von Plugin zu Plugin stark unterscheiden.

    Es kann es vorkommen, dass eine Log-Meldung vom Plugin-Autor als DEBUG gekennzeichnet wurde, die Du eher als INFO bewertest. Genauso kann es vorkommen, dass eine Log-Meldung vom Plugin-Autor als INFO gekennzeichnet wurde, die Du eher als DEBUG bewertest. Das ist nun mal so.

    Zitat von Cannon Beitrag anzeigen
    Die Plugin-Logger sind auch auf DEBUG eingestellt
    Wie gesagt: Das solltest Du schnellstens ändern. (Dann hat sich auch der Titel des Threads erledigt )
    Viele Grüße
    Martin

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

    Kommentar


      #3
      Danke für die serh ausführliche Erklärung!

      Kommentar

      Lädt...
      X