Как перенаправить вывод log4j в мой поток вывода HttpServletResponse?
используя log4j 1.2.15 в приложении Spring 3.1.1.RELEASE, развернутом на JBoss AS 7.1.1.Final. Я'я пытаюсь направить вывод, написанный в log4j, в мой поток вывода ответа. У меня вывод написан вот так
private static final Logger LOG = Logger.getLogger(TrainingSessionServiceImpl.class);
…
LOG.info("Creating/updating training session associated with order #:" + order.getId());
и я'я пытаюсь направить его к моему выходному потоку, вот так…
@RequestMapping(value = "/refreshPd", method = RequestMethod.GET)
public void refreshPD(final HttpServletResponse response) throws IOException
{
...
final WriterAppender appender = new WriterAppender(new PatternLayout("%d{ISO8601} %p - %m%n"),response.getWriter());
appender.setName("CONSOLE_APPENDER");
appender.setThreshold(org.apache.log4j.Level.DEBUG);
Logger.getRootLogger().addAppender(appender);
worker.work();
Logger.getRootLogger().removeAppender("CONSOLE_APPENDER");
но, к сожалению, ничего не выводится в мой браузер, хотя я знаю (через отладку), что операторы журналирования вызывают. Кто-нибудь знает, как я могу настроить мою настройку, чтобы она работала? Ниже мой файл log4j.properties, развернутый в моем wAR 's WEB-INF / каталог классов.
log4j.rootLogger=DEBUG, CA, FA
#Console Appender
log4j.appender.CA=org.apache.log4j.ConsoleAppender
log4j.appender.CA.layout=org.apache.log4j.PatternLayout
log4j.appender.CA.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
#File Appender
log4j.appender.FA=org.apache.log4j.FileAppender
log4j.appender.FA.File=/usr/java/jboss/server/default/log/log4j.log
log4j.appender.FA.layout=org.apache.log4j.PatternLayout
log4j.appender.FA.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
# Set the logger level of File Appender to WARN
log4j.appender.FA.Threshold = DEBUG
Спасибо, Дэйв