首页 > 解决方案 > 转换python logger的文本

问题描述

python 日志记录模块中是否有内置功能可以转换其输出文本?我目前正在记录可能包含十六进制或非 ascii 字符的数据,当我将输出记录到文件时,这些字符无法正确显示。

我当前的解决方案是在将文本放入记录器之前对其进行转换,但我更愿意进行一次转换而不是每条日志行。

例如

Logger = logging.getLogger(__name__)
Logger.textTransformation([("non_ascii_char", "replacement"),("non_ascii_char_2", "replacement")])

标签: pythonlogging

解决方案


听起来您想使用自定义 logging.Formatter。查看此答案以获取子类化 logging.Formatter 以更改文本格式化行为的简洁示例。


推荐阅读