Python 的日志记录
工具具有多个严重级别:
- 严重
- 错误
- 警告*
- 信息
- 调试
- NOTSET
*根记录器默认为警告。
在此设置中如何处理常规消息?
“常规消息”是指那些不是警告但应始终向用户显示的消息。
一个例子可以是:
循环文件列表并对它们应用累积操作。 “常规消息”可以是“当前正在处理 {filename}”。 INFO 级别可能保存文件处理的各个子步骤的状态,用户大多数时候可能对此不感兴趣。警告级别可能存在潜在问题,例如两个文件包含同一 key 的不同条目。
我认为我想要一个介于 WARNING 和 INFO 之间的级别,可以称为 NOTICE、NOTE、REGULAR 或类似名称。这个级别将是我的默认级别,而不是警告。为什么日志记录不提供这样的级别?
我知道我可以相当容易地添加这样的级别,但日志记录手册强烈 argues against custom levels 。因此,我认为必须有一种规范的方式来记录上面的消息......
编辑:只是为了澄清投票结束是“基于意见”:我想知道日志记录
应该如何使用 坚持给定的一组级别和约定。因此,我认为正确的答案不一定是意见,而应该是使用该模块的最佳实践。
手册指出“定义您自己的级别是可能的,但不是必需的,因为现有级别是根据实践经验选择的”。在上面的示例中,我似乎缺少一个级别:“常规消息”或者 - 如果我切换到表示“常规消息”的 INFO - 类似于用户的“详细信息”。
最佳答案
日志消息并未真正为用户缩进。您所描述的听起来更像是常规输出。然而,至少有两种可能的方法来解决这个问题。要么将常规消息设置为 INFO
级别,然后将不那么有趣的消息移至 DEBUG
级别,或者使用 log filter 。引用文档:
Filters can be used by Handlers and Loggers for more sophisticated filtering than is provided by levels.
关于python - 如何处理Python日志记录中的常规消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57391527/