Używam modułu logowania Pythona i chcę wyłączyć rejestrowanie konsoli na jakiś czas, ale to nie działa.
#!/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")
Powyższy kod wyświetla bla bla
na stdout i nie wiem, jak bezpiecznie wyłączyć obsługę konsoli. Jak mogę się upewnić, że tymczasowo usunę konsolę StreamHandler, a nie inną?
logger.handlers
powinien być pusty (tak jak poprzedza logger.debug()
wywołanie). Kod, o którym mowa, jest wyświetlany tylko []
(pusta lista programów obsługi). Zweryfikowano w Pythonie 2.7.15 i Pythonie 3.6.6.