У меня есть WebSphere Application Server, на котором работает WebApp. Я запускаю Сервер из Eclipse. Основной каркас журналирования в этом приложении - log4j2, но есть некоторые сторонние библиотеки, которые используют java.util.logging. Я хочу перенаправить эти журналы в log4j2, чтобы он использовал мои фильтры, формат журналов и т. Д. Для этого я могу использовать Log4j JDK Logging Adapter .
Обычно можно установить системное свойство -Djava.util.logging.manager=org.apache.logging.log4j.jul.LogManager
, например, в jvm.options. Проблема в том, что я не могу заставить это решение работать, потому что сервер использует ведение журнала java util задолго до загрузки моих свойств log4j2 и до загрузки jar log4j-jul
адаптера. Это приводит к немедленному выбрасыванию исключения после попытки запуска сервера (см. Мой другой вопрос ).
Так что я подумал, что, возможно, можно установить LogManager
на значение из банки log4j-jul
позже в процессе запуска, когда файл jar загружен и мои свойства log4j2 загружены?