在流行的日志记录框架中,如Java的log4j
或Python的logging
,日志级别具有相关的数值,请参阅此处。
这些数值用于确定给定日志级别的严重性。
但是这个数值还有其他实际用例吗?
当您选择记录给定水平时,您还需要记录更高的重力水平。
将每个日志级别与整数相关联可以更轻松地确定是否必须记录特定级别,因为它实际上是此形式的简单比较:
if current_log_level >= wanted_log_level then log_it() else drop_it()
假设您要记录警告,因此您将日志级别定义为值为 30 的WARNING
。然后。。。
- 记录关键日志,因为 50>= 30 为 True
- 记录错误日志,因为 40>= 30 为 True
- 记录警告日志,因为 30>= 30 为 True
- 不记录信息日志,因为 20>= 30 为 False
- 不记录调试日志,因为 10>= 30 为 False
只要考虑一下解决这个简单问题所需的代码,如果日志级别是字符串......