我正在使用Python2.7进行一个多模块项目。如前所述
here
我在main.py中配置了如下登录
logging.basicConfig(
format='%(asctime)s,%(msecs)d %(levelname)-8s [%(filename)s:%(lineno)d] %(message)s',
datefmt='%d-%m-%Y:%H:%M:%S',
filename='/home/ubuntu/logs/centralized_upgrade.log',
level=logging.INFO)
在每一个我需要记录的模块中,我只是在打一个如下的电话
import logging
...
logging.info('Hello World')
但我的疑问是,在某些模块中是否再次重新配置了根记录器(可能类似于下面的内容)
logging.basicConfig(
format='%(asctime)s,%(msecs)d %(levelname)-8s [%(filename)s:%(lineno)d] %(message)s',
datefmt='%d-%m-%Y:%H:%M:%S',
filename='/home/ubuntu/logs/module.log',
level=logging.INFO)
然后所有日志消息将开始进入新文件。有人能告诉我处理这件事的最佳方法吗?如何防止根记录器的重新配置?我的意图是日志配置应该与中定义的保持一致
main.py
不管在任何子模块中进行任何重新配置。
在许多地方,建议不要使用root logger,而是像前面提到的那样定义一个logger
here