Ich verwende das Protokollierungsmodul von Python und möchte die Konsolenprotokollierung für einige Zeit deaktivieren, aber es funktioniert nicht.
#!/usr/bin/python
import logging
logger = logging.getLogger() # this gets the root logger
# ... here I add my own handlers
#logger.removeHandler(sys.stdout)
#logger.removeHandler(sys.stderr)
print logger.handlers
# this will print [<logging.StreamHandler instance at ...>]
# but I may have other handlers there that I want to keep
logger.debug("bla bla")
Der obige Code zeigt das bla bla
on stdout an und ich weiß nicht, wie ich den Konsolenhandler sicher deaktivieren kann. Wie kann ich sicher sein, dass ich den StreamHandler der Konsole vorübergehend entferne und keinen anderen?
logger.handlers
leer sein (wie vor dem logger.debug()
Anruf). Der betreffende Code wird nur angezeigt []
(leere Liste der Handler). Verifiziert mit Python 2.7.15 und Python 3.6.6.