python日志记录在处理程序/表单发出消息之前如何预处理消息

2024-04-19 01:50:43 发布

您现在位置:Python中文网/ 问答频道 /正文

python日志记录如何在处理程序/格式化程序发出消息之前预处理消息

我希望处理程序/格式化程序预处理要记录的消息

logger = logging.getLogger('myLogger')
logger.addHandler(__file_handler)
logger.addHandler(__console_handler)

例如,我想限制下面语句在控制台中的输出,并美化文件中的输出

logger.info('Hello world\n'*20)

预处理器与下面的lambda类似

__console_handler.foo(lambda msg: msg[:25] + '...' if len(msg)>25 else '')
__file_handler.foo(lambda msg: replace('\n', ' '))

我想要什么

[INFO] Hello World
Hello World
H...

Tags: lambda程序消息处理程序helloworldfoologging