Подтвердить что ты не робот

Log4j 2.0 и SLF4J и бесконечное будущее фреймворков java logging

Итак, я только что узнал, что Log4J 2.0 сейчас активно разрабатывается, есть альфа-версия, и, как говорят, она заменяет logback.

Сейчас в моем приложении у меня есть около 4, возможно, больше фреймворков регистрации:

  • Ведение журнала Java Util
  • log4j
  • SLF4J
  • logback (игнорируется благодаря предоставленному maven хаке)
  • запись в сообществах (игнорируется благодаря предоставленному maven хаке)
  • И у tomcat есть собственный адаптер JULI

Я использую log4j (1.2.x), потому что, честно говоря, мне просто не нужны функции новых парней, но в последнее время меня соблазняло переключиться на SLF4J и в основном , потому что я не хочу иметь переписать мои сложные файлы конфигурации log4j в новый формат (logback).

Теперь мой вопрос в том, что я должен кодировать, - это SLF4J - правильный выбор для будущего данного log4j 2.0.

Кажется, я должен просто придерживаться старого log4j (1.2.x), поскольку он является самым низким общим знаменателем?

ОБНОВЛЕНИЕ: при дальнейшем рассмотрении log4j 2.0, при этом очень похоже, что конфигурация не обратно совместима с log4j 1.2. Похоже, что самый лучший выбор - logback.

4b9b3361

Ответ 1

Это субъективный вопрос.

Я бы предложил использовать slf4j, так как он может использовать log4j в качестве бэкэнд, если это вам нужно.

Вероятно, вы используете несколько компонентов, которые могут использовать разные API протоколирования. Хорошо иметь возможность консолидировать выход через эти API в один выходной маршрут.

Ответ 2

Отказ от ответственности. Я являюсь основателем проектов log4j, slf4j и logback, но не связан с log4j 2.0.

Как я понимаю, несмотря на его имя, log4j 2.0 сильно отличается от log4j 1.x. Что касается API-интерфейса пользователя, log4j 2.0 в значительной степени несовместим с log4j 1.x. Log4j 2.0 обеспечивает уровень адаптации для log4j 1.x, который в настоящее время (2012-08) undocumented.