我正在尝试使用配置文件来配置 Python 日志记录,但也在加载 dict 配置后添加处理程序。所以我的配置文件就像
version: 1
formatters:
default_formatter:
format: '%(asctime)s : %(levelname)s : %(message)s'
datefmt: '%d-%b-%Y %H:%M:%S'
plain_formatter:
format: '%(message)s'
handlers:
console_default_handler:
class: logging.StreamHandler
level: INFO
formatter: default_formatter
stream: ext://sys.stdout
root:
level: INFO
handlers: [console_default_handler]
然后在代码中 - 我做
log_config_dict=yaml.load(open(log_config_file, 'r'))
logging.config.dictConfig(log_config_dict)
我想以这种方式添加记录器 -
fhandler1=logging.FileHandler(log_file_name,mode="w")
fhandler1.setFormatter(log_config_dict['formatters']['plain_formatter'])
fhandler1.setLevel(logging.DEBUG)
这是行不通的。请问有什么方法可以捕获 dictConfig 中定义的获取值,以便在我的手动日志配置中使用它们?
谢谢