Вход Фасад или Logger в приложении для новичка

Я нахожусь в точке моего маленького тестового веб-приложения, которое мне нужно для регистрации. У меня нет никакого реального опыта ни в log4j, ни в java.util.logging, и я подумал, стоит ли мне начинать сразу с фасада регистрации (slf4j).

Я читал, что фасад журнала должен использоваться для библиотек, которые являются общими (каркасы), что имеет смысл. Но в случае, если конкретное приложение я не уверен, куда идти. Было бы лучше использовать log4j (или logback) напрямую из-за производительности? Или я должен начать с slf4j прямо сейчас, так как я все равно не знаю других?

Спасибо

4 ответа

Решение

Log4j, Java Logging - это каркасы журналирования (A)

SLF4J, Commons-Logging - каротажно-фасадные каркасы (B)

http://www.slf4j.org/faq.html

Даже когда вы используете что-либо в списке (B) выше, вам все равно нужно дать ему основную фактическую реализацию логгера (которая является чем-то из списка A) для правильной работы.

Так что, если вы делаете библиотеку, которую вы кому-то отправите (и вы не знаете, какие из фреймворков они будут использовать из списка A), ТО вам следует пойти на что-то в списке B (идеальным является SLF4J)

Если вы делаете отдельное приложение, то, по всей вероятности, log4j (из списка A) должен решить вашу цель.

Для автономного приложения я бы начал с Jakarta Commons Logging вместе с log4j.

Я не рекомендую java.util.logging, поскольку найти ошибку конфигурации с ним - кошмар. Лучший выбор:

  • log4j для бэкэнда
  • регистрация общего доступа (более популярная версия) или slf4j (более поздняя версия) для внешнего интерфейса

ОБНОВЛЕНИЕ: эта недавняя запись в блоге может помочь вам выбрать приличный / недавний / пригодный для использования интерфейс регистрации и бэкэнд

SLF4J был создан как улучшение log4j, к числу решаемых проблем относятся производительность и, как мне кажется, наиболее полезная возможность подключения инфраструктуры ведения журналов во время развертывания.

Я предлагаю вам начать с первого, log4j, он очень прост и облегчит понимание SJF4J.

Другие вопросы по тегам