Перенаправить log4j в slf4j - PullRequest
       5

Перенаправить log4j в slf4j

5 голосов
/ 22 февраля 2012

Если сторонняя зависимость регистрирует с использованием конкретной платформы (такой как log4j), и я хочу, чтобы мое приложение делало все записи через slf4j, тогда возможно ли настроить log4j (либо в XML, в файле свойств и т. Д.) Дляперенаправить сообщения журнала в API slf4j?(Который во время выполнения связывался бы с конкретной привязкой slf4j по моему выбору.)

Было бы просто хорошо, чтобы все сообщения журнала передавались в одно и то же место через один и тот же API.

Я даже не против, если мне нужно что-то сделать немного сумасшедшим, например, указать log4j.properties на некоторый промежуточный код (который я бы написал), который, в свою очередь, направляет трафик на slf4j!

Я просто не знаю с чего начать.Заранее спасибо!

1 Ответ

4 голосов
/ 22 февраля 2012

Конечно, вы можете, и это подробно объясняется в документации :

log4j-over-slf4j

SLF4J shipс модулем под названием log4j-over-slf4j.Это позволяет пользователям log4j переносить существующие приложения в SLF4J, не меняя ни одной строки кода, а просто заменяя файл log4j.jar на log4j-over-slf4j.jar, как описано ниже.- вы удаляете log4j.jar и заменяете его на log4j-over-slf4j.jar.Последний JAR отражает классы Log4J в одних и тех же пакетах, поэтому ваше приложение и библиотеки даже не нужно перекомпилировать.Но новые реализации просто перенаправляют на SLF4J.

...