как настроить slf4j для обработки ведения журнала JUL в HttpServlet?

У нас есть большое существующее приложение, в котором есть несколько HttpServlets. В настоящее время они записываются с использованием ведения журнала log4j, за исключением нескольких библиотек, которые были написаны с использованием Java.util.logging.

Я ДЕЙСТВИТЕЛЬНО ДЕЙСТВИТЕЛЬНО хотел бы, чтобы они все прошли через обработку log4j и форматирование вывода.

Похоже, я должен использовать slf4j для этого, но я не могу найти фактическую документацию о том, КАК. Просто много "да, это может делать что-то подобное". Я добавил slf4j-api.jar, slf4j-log4j12.jar и jul-to=slf4j.jar в свой путь к классам.

Поскольку это, похоже, не обрабатывает ведение журнала JUL (все еще выходит в своем собственном формате), должно быть что-то конкретное, что нужно сделать, чтобы все подключить/запустить, но я не смог найти документы именно о том, ЧТО нужно.


person CasaDelGato    schedule 04.12.2013    source источник
comment
Извините, я на самом деле не пробовал это сам, поэтому я не уверен на 100%, что это работает. Предполагая, что вы говорите о log4j2, вы видели страницу часто задаваемых вопросов, где подробно описано, какие банки вам нужны? Если проблема не устранена, не могли бы вы поднять ее в системе отслеживания проблем log4j2? Спасибо!   -  person Remko Popma    schedule 05.12.2013


Ответы (1)


для вашей проблемы вы можете использовать мост JUL-SLF4J, описанный в http://www.slf4j.org/legacy.html

Не забудьте позвонить один раз SLF4JBridgeHandler.install()

Если у вас есть возможность, вместо моста я предлагаю вам использовать миграцию, полученный код будет чище с лучшей производительностью!

person foch    schedule 09.12.2013
comment
На самом деле это было довольно близко к необходимым изменениям. Мне действительно пришлось добавить 2 строки. (и нет, в этом коде нельзя использовать средство миграции.) SLF4JBridgeHandler.removeHandlersForRootLogger(); SLF4JBridgeHandler.install(); - person CasaDelGato; 10.12.2013