Хорошо, есть способ сделать это, используя log4j.Я не говорю, что это лучший способ, но этот метод должен работать.Вот отправная точка.
Загрузите log4j.jar
и вставьте его в свой WEB-INF/lib
Имейте log4j.properties
в WEB-INF/classes
.Это будет выглядеть так:
log4j.rootLogger=DEBUG, console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{MM-dd@HH:mm:ss} %-5p %c{1}]: %m%n
log4j.logger.myoldsitelogger=DEBUG,myoldsite
# myoldsite writes to file
log4j.appender.myoldsite=org.apache.log4j.RollingFileAppender
log4j.appender.myoldsite.File=${catalina.base}/logs/tomcatlog4j.log
log4j.appender.myoldsite.MaxFileSize=100KB
log4j.appender.myoldsite.layout=org.apache.log4j.PatternLayout
log4j.appender.myoldsite.layout.ConversionPattern=%d{MM-dd@HH:mm:ss} %-5p %c{1}]: %m%n
log4j.logger.mynewsitelogger=DEBUG,mynewsite
# mynewsite writes to file
log4j.appender.mynewsite=org.apache.log4j.RollingFileAppender
log4j.appender.mynewsite.File=${catalina.base}/logs/tomcatlog4j_newsite.log
log4j.appender.mynewsite.MaxFileSize=100KB
log4j.appender.mynewsite.layout=org.apache.log4j.PatternLayout
log4j.appender.mynewsite.layout.ConversionPattern=%d{MM-dd@HH:mm:ss} %-5p %c{1}]: %m%n
Теперь из вашего приложения найдите дескриптор нужного регистратора
Logger logger = Logger.getLogger("myoldsitelogger");
Logger logger2 = Logger.getLogger("mynewsitelogger");
if(request.getParameter("oldsite") != null)
logger.info("In my.jsp from oldsite");
else
logger2.info("In my.jsp from newsite");
В папке журналов у вас должно быть 2 файла журнала с именем tomcatlog4j.log
и tomcatlog4j_newsite.log
с правильными сообщениями.
Может быть способ сделать это в Tomcat даже без log4j, но у меня пока нет рабочего образца