在Python 3.7.3中,如果多次调用logging.config.fileConfig,则日志记录系统会静默失败。
是什么原因导致这种情况发生?
import logging.config
logging.config.fileConfig('logging.conf')
logger = logging.getLogger(__name__)
logger.error("I print")
logging.config.fileConfig('logging.conf')
logger.error("I do not")
一种解决方法是将每个呼叫包装到logging.config.fileConfig
中的if __name__ == '__main__':
呼叫中
有更好的方法吗?
答案 0 :(得分:2)
您需要通过以下调用确保未禁用任何现有记录器:
logging.config.fileConfig('logging.conf', disable_existing_loggers=False)
已记录在here中。