Daten aus Webseite auslesen

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
Sirius3
User
Beiträge: 17747
Registriert: Sonntag 21. Oktober 2012, 17:20

@Pok1990: gegen einen Logger pro Modul sagt ja auch niemand etwas, aber Du erzeugst einen Logger pro Instanz und zwar auch nur immer mit dem Namen des Moduls. Du solltest Dich an die Dokumentation halten, weil das im Normalfall eine gute Lösung ist. Nur wenn Du wirklich weißt, was Du tust, kannst Du abweichen.
BlackJack

@Pok1990: Da Du Klasse und Modul irgendwie durcheinander bringst: Du hast hoffentlich nicht pro Klasse eine Datei/ein Modul‽

Die Mehrfachausgaben kamen, weil Du das eben an der falschen Stelle machst. Du verhinderst das die Ausgaben zum Root-Logger durchgereicht werden (propagate = False), und machst bei dem untergeordneten Logger die ganze Konfiguration. Die würde man beim Root-Logger machen und die ganzen anderen modulspezifischen Logger dann ihre Ausgaben an den weiterleiten lassen. Da braucht man nichts weiter für machen, das ist das Standardverhalten. Wobei man das Loglevel dann ja immer noch für einzelne Logger-Exemplare einstellen kann. Entweder in dem Modul oder über eine Konfigurationsdatei.

„Module-level logger“ heisst Logger auf Modulebene. Nicht in einer Klasse. Falls man für Klassen dann noch speziellere haben möchte, könnte man die ja auch noch einrichten und den Namen aus Modul- und Klassenname zusammensetzen, also eine Ebene unter das Modul setzen, in der Logger-Hierarchie.
Antworten