2015-07-23 15 views
12

Ich verwende das Python-Logging-Modul.Wie wird die aktuelle Protokollierungskonfiguration des Python-Protokollmoduls gedruckt?

Ich aktualisiere die Logging-Konfiguration mit Logging.dictConfig().

Ich möchte eine Möglichkeit, die aktuelle Konfiguration (z. B. Ebene) von jedem Logger zu lesen und zu drucken.

Wie kann ich diese Informationen erhalten und ausdrucken?

+7

https://pypi.python.org/pypi/logging_tree –

+0

Sind Sie fragen, wie das aktuelle Niveau für einen bestimmten Logger zu bekommen? –

Antwort

2

Wenn das, was Sie wollen, dass die Protokollierungsebene für einen bestimmten Logger ist, dann können Sie verwenden - logger.getEffectiveLevel(), würde dies den Integer-Wert für die aktuelle Protokollierungsstufe für den Logger geben, und dann können Sie es mit logging.getLevelName(), benutzen Sie die Zeichenfolgendarstellung für diese Ebene.

Beispiel -

>>> import logging 
>>> l = logging.getLogger(__name__) 
>>> l.setLevel(logging.DEBUG) 
>>> logging.getLevelName(l.getEffectiveLevel()) 
'DEBUG' 
+2

Danke, Anand. Meine Frage war mehr darüber, wie man die Konfiguration aller Logger druckt. Simeon hat darauf geantwortet, aber ich weiß deinen Vorschlag zu schätzen. – morfys

Verwandte Themen