日志级别的数值有哪些用例?

fug*_*ama 1 python java logging log4j

在 Javalog4j或 Python等流行的日志记录框架中logging,日志级别具有关联的数值,请参阅此处

这些数值用于确定给定日志级别的严重性。

但是这个数值还有其他实际用例吗?

Try*_*yph 11

当您选择记录给定级别时,您还想记录更高的重力级别。

将每个日志级别与一个整数相关联可以更容易地确定是否必须记录特定级别,因为它实际上是这种形式的简单比较:

if current_log_level >= wanted_log_level then log_it() else drop_it()
Run Code Online (Sandbox Code Playgroud)

假设您想记录警告,因此您将日志级别定义WARNING为 30。然后...

  • 记录 CRITICAL 日志,因为 50 >= 30 为 True
  • 错误日志被记录,因为 40 >= 30 是 True
  • 警告日志被记录,因为 30 >= 30 是 True
  • 信息日志未记录,因为 20 >= 30 为 False
  • 未记录调试日志,因为 10 >= 30 为 False

如果日志级别是字符串,请考虑解决这个简单问题所需的代码......