gpt4 book ai didi

python - 如何在 Python 中临时更改记录消息的格式?

转载 作者:太空狗 更新时间:2023-10-29 17:28:59 31 4
gpt4 key购买 nike

在 Python 中临时更改日志消息格式的最简单方法是什么(通过日志模块)?

目标是拥有一些标准的消息格式,同时能够临时添加有关正在读取的某些文件的信息(例如其名称);当不再读取文件时,消息格式应恢复为默认格式。产生消息的程序不知道正在读取什么文件,所以如果它的消息自动包含相关文件名就更好了(错误消息将是:“ERROR while读取文件 ***: …”而不是“错误:…”)。

最佳答案

这是一个简单的解决方案,可以从 Vinay Sajip 推导出来自己的HOWTO ;它基本上使用 setFormatter() 更新了日志格式化程序:

import logging

logger = logging.getLogger() # Logger
logger_handler = logging.StreamHandler() # Handler for the logger
logger.addHandler(logger_handler)

# First, generic formatter:
logger_handler.setFormatter(logging.Formatter('%(message)s'))
logger.error('error message') # Test

# New formatter for the handler:
logger_handler.setFormatter(logging.Formatter('PROCESSING FILE xxx - %(message)s'))
logger.error('error message') # Test

这会正确地产生:

error message
PROCESSING FILE xxx - error message

(其中 xxx 可以动态设置为正在处理的文件,如问题中所要求的)。

关于python - 如何在 Python 中临时更改记录消息的格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6847862/

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