python日志:从自定义日志打印Accurate信息

2024-06-15 09:25:58 发布

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

我创建了一个自定义日志级别,如下所示:

class MyLoggerAdapter(logging.LoggerAdapter):
    def __init__(self, logger, extra):
        logging.LoggerAdapter.__init__(self, logger, extra)
        self.logger = logger
        logging.addLevelName(25, "NOTICE")

    def notice(self, msg, *args, **kwargs):
        self.logger.log(25, msg, *args, **kwargs)

我遇到的问题是,我的logger格式使用%(pathname)s%(lineno)d,每当我调用logger.notice()时,这些值都引用notice方法定义中的行,而不是调用该方法的位置。如何添加notice日志级别,但将消息的正确位置打印到日志中?你知道吗


Tags: 方法selfinitloggingdefargsmsglogger