在我的当前项目中,有成千上万行的代码看起来像这样:
logging.info("bla-bla-bla")
我不想改变所有这些行,但我希望改变日志记录的行为。我的想法是将根记录器更改为其他实验性
记录器,该记录器通过ini文件进行配置:
[loggers]
keys = Experimental
[formatter_detailed]
format = %(asctime)s:%(name)s:%(levelname)s %(module)s:%(lineno)d: %(message)s
[handler_logfile]
class = FileHandler
args = ('experimental.log', 'a')
formatter = detailed
[logger_Experimental]
level = DEBUG
qualname = Experimental
handlers = logfile
propagate = 0
现在通过以下代码设置新的根记录器:
logging.config.fileConfig(path_to_logger_config)
logging.root = logging.getLogger('Experimental')
重新定义根记录器是否安全?也许有更方便的方法吗?
我尝试使用谷歌并查看了stackoverflow上的问题,但我没有找到答案。
logging.root.name = 'myapp'
或logging.getLogger().name = 'myapp'
。 - mykhal