对一个日志应用python日志过滤器

2024-04-19 05:32:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我设置了一个python记录器,我希望能够将我创建的过滤器添加到日志记录.ERROR日志的级别。在

我试过了:

class MyFilter(object):
  def __init__(self, level):
    self.__level = level

  def filter(self, logRecord):
    return logRecord.levelno <= self.__level

logger = logging.getLogger()
handler = logging.StreamHandler()
formatter = logging.Formatter(
        '%(levelname)-8s %(msg)s')
handler.setFormatter(formatter)
logger.addHandler(handler)
logger.setLevel(logging.INFO)

logger.addFilter(MyFilter(logging.ERROR))

当我尝试这个时,我得到一个错误:TypeError: object of type 'int' has no len()

如何向特定的日志级别添加过滤器?在


Tags: self过滤器objectformatterloggingdef记录error