Python的logging
工具具有多个严重级别:
* root记录器默认为警告。
在此设置中,如何处理常规消息?
“常规消息”是指那些不是警告,但应始终向用户显示的消息。
一个例子可能是:
遍历文件列表并对其进行累加操作。 “常规消息”可能是“当前在{filename}上工作”。 INFO级别可能保持文件处理的各个子步骤的状态,而用户大部分时间可能都不会对这些子步骤感兴趣。在警告级别,可能会出现潜在问题,例如两个文件包含相同密钥的不同条目。
我认为我想要一个介于WARNING和INFO之间的级别,它可以称为NOTICE,NOT,REGULAR或类似名称。该级别将是我的默认值,而不是警告。为什么日志记录不提供这样的级别?
我知道我可以很容易地添加这样一个级别,但是强烈建议使用日志记录手册argues against custom levels。因此,我认为必须有一种记录上述消息的规范方法...
编辑:只是为了澄清“基于观点”的关闭投票:我想知道如何logging
应该使用 遵守给定的级别和惯例。因此,我认为正确答案不一定是一种意见,而应该是使用此模块的最佳实践。
该手册指出“可以定义您自己的级别,但不必这样做,因为根据实际经验选择了现有级别”。在上面的示例中,我似乎缺少一个层次:“常规消息”或-如果我切换到INFO(意思是“常规消息”)-对于用户来说像“详细信息”。
答案 0 :(得分:2)
未真正为用户缩进日志消息。您所描述的听起来更像常规输出。但是,至少有两种可能的方法可以解决此问题。将常规消息设为INFO
级别,然后将不那么有趣的消息移至DEBUG
级别,或者使用log filter。引用文档:
过滤器可由处理程序和记录器使用,以使功能更复杂 过滤级别所提供的内容。