![](/img/trans.png)
[英]Python - how do I configure a child logger via a logging configuration file
[英]Python logging - how do I disable or set different logging level for some modules, using the logger configuration file?
我正在从配置文件中读取日志记录配置:
logging.config.fileConfig(fname=logConfigFilePath, disable_existing_loggers=False)
。
日志记录配置尽可能基本:
[loggers]
keys=root
[logger_root]
level=DEBUG
handlers=consoleHandler
[handlers]
keys=consoleHandler
[handler_consoleHandler]
class=StreamHandler
level=DEBUG
formatter=consoleFormatter
args=(sys.stdout,)
[formatters]
keys=consoleFormatter
[formatter_consoleFormatter]
format=%(asctime)s %(levelname)s %(filename)s-%(funcName)s %(message)s
我需要为某些特定模块设置不同的日志记录级别(例如WARNING
),例如:
DEBUG connectionpool.py-_new_conn Starting new HTTPS connection (1):...
我怎样才能做到这一点,不是以编程方式,而是使用配置文件?
谢谢。
在配置中,您可以通过其qualname操作运行时记录器。
例如,假设您的记录器位于模块ab
中,并且您正在使用logging.getLogger(__name__)
。
您将扩展您的 loggers 部分以包含新的记录器配置名称,以及为记录器提供不同级别的新部分,并通过 qualname 将其链接到运行时记录器
[loggers]
keys=root,changed_logger
[logger_changed_logger]
qualname=a.b
level=DEBUG
;inherit all handlers from parent, do not create any new ones
propagate=1
handlers=
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.