#python #python-3.x
Вопрос:
Я определил приведенный ниже журнал классов. Однако при попытке доступа к содержимому обработчика памяти он не возвращает ничего. Почему он не возвращает журналы?
from test13 import Log logger_ = Log(__file__) logger = logger_.logger logger.warning('This is serious') logger.error('This is really bad') logger.error('This is really b21ad') print(logger_.memo.flush())
Выход:
gt;gt; None gt;gt; Process finished with exit code 0
Это было бы test13.py с классом журнала.
import io import logging from path import Path class Log: def __init__(self, name_): self.name = Path(name_).stem self.level = 'DEBUG' self.logger = logging.getLogger(__name__) self.logger.setLevel(self.level) self.formatter = logging.Formatter( '%(asctime)s - %(name)s - %(levelname)s - %(message)s' ) # Configure the handlers self.memo = self.handler_memory() # Add the handlers self.logger.addHandler(self.memo) def handler_memory(self): # Keep the errors in memory stream = io.StringIO() memo = logging.StreamHandler(stream) memo.setFormatter(self.formatter) memo.setLevel(logging.ERROR) return memo