Hilfe bei Python Logging Facility
Verfasst: Montag 23. Januar 2006, 16:39
Hi,
ich habe mir angeschaut was ich mit der Python Logging Facility so anstellen kann, und finde das sehr sehr umfangreich.
Mein Ziel ist es Critical und Warnings in getrennte files zu loggen.
Das habe ich auch hinbekommen, über die externe config und die paar aufrufzeilen unten.
Dummerweise loggt aber der WARNING auch CRITICAL.
Wie bekomme ich das weg ?
Ich möchte unbedingt die externe config und das logging verwenden, da ich damit auch spätermal ohne viel aufwand netzwerklogging etc. einsetzen kann.
Ist es evtl total umständlich was ich da Konfiguriert hab ?
Der Aufruf im programm ist dann :
ich habe mir angeschaut was ich mit der Python Logging Facility so anstellen kann, und finde das sehr sehr umfangreich.
Mein Ziel ist es Critical und Warnings in getrennte files zu loggen.
Das habe ich auch hinbekommen, über die externe config und die paar aufrufzeilen unten.
Dummerweise loggt aber der WARNING auch CRITICAL.
Wie bekomme ich das weg ?
Ich möchte unbedingt die externe config und das logging verwenden, da ich damit auch spätermal ohne viel aufwand netzwerklogging etc. einsetzen kann.
Ist es evtl total umständlich was ich da Konfiguriert hab ?
Code: Alles auswählen
[loggers]
keys=root,warn_logger,critical_logger
[handlers]
keys=warnhandler,criticalhandler
[formatters]
keys=timestamper
[logger_root]
level=NOTSET
handlers=warnhandler,criticalhandler
propagate=1
[logger_warn_logger]
level=WARN
handlers=warnhandler
qualname=warnlogger
propagate=1
[logger_critical_logger]
level=CRITICAL
handlers=criticalhandler
qualname=criticallogger
propagate=1
[handler_criticalhandler]
class=FileHandler
level=CRITICAL
formatter=timestamper
args=("./fatal.log","w")
[handler_warnhandler]
class=FileHandler
level=WARN
formatter=timestamper
args=("./warnings.log","w")
[formatter_timestamper]
format=%(asctime)s - %(name)s - %(levelname)s - %(message)s
datefmt=%Y-%m-%d %H:%M:%S
Der Aufruf im programm ist dann :
Code: Alles auswählen
logging.config.fileConfig("./config.ini")
#create logger
logger = logging.getLogger()
logger.debug("debug message")
logger.info("info message")
logger.warn("warn message")
logger.error("error message")
logger.critical("critical message")
logger.warn("meine warning")