Я всегда использовал это как ориентир; Я использую Log4j больше, чем Commons Logging, но это может быть полезно:
DEBUG - для подлинной информации уровня отладки; не будут видны в производстве или отгруженном продукте, так как ИНФО будет минимальным уровнем; подходит для захвата времени, количества событий и т. д.
INFO - минимальный уровень для производства / отгрузки; записывать данные, которые могут быть полезны при судебно-медицинских экспертизах и подтверждать успешные результаты («999 элементов хранятся в БД в порядке»); вся информация здесь должна быть такой, чтобы вы были в порядке, когда конечные пользователи / клиенты увидят ее и отправят вам, если потребуется (без секретов, нецензурной лексики!)
ПРЕДУПРЕЖДЕНИЕ - не уровень ошибки как таковой, но полезно знать, что система может входить в хитрую территорию, например, бизнес-логика, такая как «количество заказанных продуктов <0», которая предполагает ошибку где-то, но не является системным исключением; Честно говоря, я не использую его настолько, чтобы находить вещи более естественными для INFO или ERROR </p>
ОШИБКА - используйте это для исключений (если нет веских оснований для сокращения до WARN или INFO); регистрировать полные трассировки стека вместе с важными значениями переменных, без которых диагностика невозможна; использовать только для ошибок приложения / системы, а не для плохой бизнес-логики
FATAL - используйте это только для ошибки такой серьезности, что это буквально препятствует запуску / продолжению приложения
Дополнительно - часто просматривайте свои записи, с активными уровнями DEBUG и INFO, вы хотите иметь возможность следить за хорошим повествованием, с заметными событиями, которые легко найти, и быть уверенным, что вы не делаете ничего слишком многословного, которое умаляет читаемость.
Также убедитесь, что вы используете шаблон, который приводит к аккуратным столбцам для таких вещей, как отметки времени, исходные классы и уровень серьезности - опять же, это значительно повышает удобочитаемость.