gpt4 book ai didi

Python 日志记录 : dictConfig

转载 作者:行者123 更新时间:2023-11-30 23:39:09 30 4
gpt4 key购买 nike

我正在尝试使用配置文件来配置 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 中定义的获取值以便在我的手动日志配置中使用它们吗?

最佳答案

哦,我明白了。我需要做的是

formatter =logging.Formatter(log_config_dict['formatters']['plain_formatter']['format'])             
fhandler1.setFormatter(formatter)

所以,我需要创建一个 Formatter 对象。

关于Python 日志记录 : dictConfig,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13805905/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com