Если ваши банки являются отдельными веб-приложениями, каждое веб-приложение должно использовать то, которое оно сначала находит в пути к классам (WEB-INF / classes).
Вы можете передать параметр -Dlog4j.configuration = path_to_file внапример, запуск tomcat, чтобы убедиться, что он использует тот, который вы собираетесь использовать.Однако, насколько я понимаю, это будет то, что Tomcat будет использовать для каждого развернутого веб-приложения.
Вопрос в том, как вы развертываете свои приложения.Либо все веб-приложения в одном tomcat, в этом случае вы, вероятно, хотите, чтобы каждое веб-приложение использовало разные log4.properties (или log4j.xml), или в случае, когда вы указываете одно для tomcat, оно должно использовать указанное вами.
К чему это сводится, насколько я знаю: либо первый найденный в classpath (помните: у каждого веб-приложения есть свой собственный classpath), либо тот, который вы указываете с помощью параметра -D.
Только что нашел эту ссылку, которая, я думаю, хорошо обобщает основные концепции входа в tomcat и веб-приложений, развернутых в tomcat: http://wiki.apache.org/tomcat/FAQ/Logging
Если вам нужен еще больший контроль над ведением журнала log4j, вы можете прибегнуть к написанию кода log4jКонфигурация в Java.Однако это будет означать, что вам придется изменить исходный код и добавить в него код, который относится к инфраструктуре и связан с подробностями развертывания вашего приложения (не так приятно).