Когда вы выбираете регистрировать данный уровень, вы также хотите регистрировать более высокие уровни гравитации.
Связывание каждого уровня регистрации с целым числом значительно упрощает определение необходимости заданного уровня c. зарегистрировано или нет, потому что на самом деле это простое сравнение этой формы:
if current_log_level >= wanted_log_level then log_it() else drop_it()
Допустим, вы хотите регистрировать предупреждения, поэтому вы определяете уровень журнала на WARNING
, значение которого равно 30. Затем. ..
- ЖУРНАЛЫ КРИТИЧЕСКИ регистрируются, потому что 50> = 30 - это Истина
- Журналы ОШИБКИ регистрируются, потому что 40> = 30 - это Истина
- Журналы ПРЕДУПРЕЖДЕНИЯ регистрируются, потому что 30> = 30 - это правда
- Журналы ИНФОРМАЦИИ НЕ регистрируются, потому что 20> = 30 - это ложь
- Журналы ОТЛАДКИ НЕ регистрируются, поскольку 10> = 30 - это ложь
Просто подумайте, какой код необходим для решения этой простой проблемы, если уровни журналов были строками ...