Python 3 официальные документы указывают следующее StreamHandler
:
Возвращает новый экземпляр класса StreamHandler
. Если указан поток, экземпляр будет использовать его для регистрации выходных данных; в противном случае будет использоваться sys.stderr
.
Может кто-нибудь объяснить, что это значит?
Я использую экземпляр StreamHandler
, который инициализирую без указания потока:
class MyLogger():
def __init__(self, level):
self.logger = getLogger('MyLogger')
self.debug = self.logger.debug
self.info = self.logger.info
self.warning = self.logger.warning
self.error = self.logger.error
self.critical = self.logger.critical
streamHandler = StreamHandler()
streamHandler.setLevel(level)
self.logger.addHandler(streamHandler)
self.logger.setLevel(level)
myLogger = MyLogger(DEBUG)
...
myLogger.debug('message')
Но все выводится на консоль (т. Е. sys.stdout
).
Так как именно sys.stderr
здесь задействован?
Спасибо!