Да, ты должен. Использование фасада регистрации, такого как SLF4J, дает вам гибкость, не обременяя ваших пользователей конкретной структурой регистрации.
Авторы широко распространенных компонентов и библиотек могут кодировать интерфейс SLF4J, чтобы не навязывать структуру ведения журнала конечному пользователю компонента или библиотеки. Таким образом, конечный пользователь может выбрать желаемую структуру ведения журналов во время развертывания, вставив соответствующую привязку slf4j в путь к классу, которая может быть изменена позже путем замены существующей привязки другой на пути к классам и перезапуска приложения. Этот подход оказался простым и очень надежным.
Кроме того, если ваши пользователи не включают банку SLF4J (из руководства пользователя ):
Начиная с SLF4J версии 1.6.0, если на пути к классам привязка не найдена, то по умолчанию slf4j-api будет использовать реализацию без операций, отбрасывая все запросы журнала.
Если вы беспокоитесь о влиянии производительности на ведение журналов, ознакомьтесь с этой записью SLF4J FAQ . Идея состоит в том, что вы предоставляете параметры для записи операторов вместо их добавления в строку:
Следующие две строки приведут к одинаковому результату. Тем не менее, вторая форма будет превосходить первую форму по крайней мере в 30 раз, в случае отключенного оператора ведения журнала.
logger.debug("The new entry is "+entry+".");
logger.debug("The new entry is {}.", entry);
SLF4J - это еще один лесозаготовительный фасад?
SLF4J концептуально очень похож на JCL. Таким образом, его можно рассматривать как еще один фасад для рубки леса. Тем не менее, SLF4J намного проще по конструкции и, возможно, более надежен. В двух словах, SLF4J позволяет избежать проблем с загрузчиком классов, которые мешают [Jakarta Commons Logging].