Я хочу обновить наш экземпляр tomcat с 5.5.27 до 6.0.32, и у меня возникли проблемы с ведением журнала из jar-файлов в каталоге shared / lib (я воссоздал этот каталог в tomcat 6).
У нас есть файл jar, который мы создаем как часть нашего процесса сборки с некоторым общим кодом в нем, и под tomcat 5 он находился в shared / lib. Когда мы записывали операторы журнала из кода в этом файле jar, они записывались в файл журнала веб-приложения, вызывающего jar в тот момент. У каждого из наших веб-приложений есть log4j.properites и log4j.jar в каталоге WEB-INF / lib, а также был log4j.jar в shared / lib, но не log4j / properties.
Мы используем log4j и получить ссылки на журналы следующим образом:
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class MyClass {
private final static Log CLASS_LOG = LogFactory.getLog(MyClass.class);
}
Но когда я перемещаю ту же самую конфигурацию наших jar-файлов, webapps, log4.properties и log4j.jars в tomcat 6, операторы журналирования из нашего общего jar-файла просто переходят в catalina.log.
Я много читал (включая http://www.mulesoft.com/tomcat-classpath , а также загрузчик классов и документацию по ведению журнала на веб-сайте tomcat), и в основном я могу ' Я понял, как это работало, как в Tomcat 5! (Я не настраивал его, это то, что я унаследовал, что до сих пор «просто работало».)
Есть ли у кого-нибудь подобный опыт попытки получить журналы из общих библиотек в файлы журналов webapp? Я думаю, что размещение общего jar-файла в каталоге WEB-INF / lib каждого веб-приложения поможет отсортировать это, но тогда у меня будет много копий одного и того же.