Конфигурация log4j в EAR

У меня есть EAR, состоящий из архивов ejb.jar.

Где я могу / должен разместить свой файл конфигурации log4j.xml в моем EAR, чтобы настроить log4j для различных EJB?

Вот моя следующая структура:

myEar
|-- myEjb1.jar
|-- myEjb2.jar
|-- myEjb3.jar
|-- lib
    | -- myLib1.jar
    | -- myLib2.jar

Заранее спасибо!


person Blaise Gosselin    schedule 03.10.2011    source источник
comment
Что вы имеете в виду под настройкой их для разных EJB-компонентов? Вам нужны разные конфигурации для разных JAR-файлов EJB?   -  person K Erlandsson    schedule 03.10.2011


Ответы (2)


Если log4j используется разными модулями в ухе, его следует поместить в jar, который находится в каталоге lib уха. Но это не очень удобно, так как вам придется заново собирать ухо и повторно развертывать его каждый раз, когда вы меняете уровень журнала.

Другой вариант - поместить файл конфигурации log4j в папку и добавить эту папку в путь к классам уха. Большинство серверов приложений предоставляют эту функцию (например, WebSphere). Он менее портативный, но более управляемый: конфигурацию можно изменить без повторного развертывания уха.

person Laurent Legrand    schedule 03.10.2011

Давайте проясним это: для вашего корпоративного приложения существует только один log4j, независимо от того, из скольких EJB оно состоит. Точно так же есть только один файл конфигурации. Если вам нужно настроить его для разных EJB, вы можете использовать логгеры с соответствующими именами в коде EJB и управлять ими в одном файле log4j.xml.

У Лорана есть несколько интересных советов, куда его поставить (+1).

person MaDa    schedule 04.10.2011