У меня возникли проблемы с поиском/получением каких-либо выходных данных журнала из веб-службы.
У меня есть веб-служба, работающая через axis2 в контейнере Tomcat6, файл .aar содержит следующую структуру:
root/
log4j.properties
lib/
slf4j-api.jar
slf4j-log4j12.jar
log4j-1.2.jar
com/
all of my classes
META-INF/
services.xml
Услуга пока проста, всего лишь:
public class MyService {
private static Logger log = LoggerFactory.getLogger(MyService.class);
public String echo(String toLog) {
log.error("Entered echo with [{}]", toLog);
return "Echo: " + toLog;
}
}
При запуске основной командой из jar-файла в командной строке ведение журнала работает нормально, но при доступе в качестве веб-службы файл журнала не создается, но и ошибок не возникает. Клиент получает строку «Echo:» + toLog, как и ожидал.
Вот соответствующие биты из log4j.properties
### direct messages to file myservice.log ###
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=/var/lib/tomcat6/logs/myservice.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
### set log levels - for more verbose logging change 'info' to 'debug' ###
log4j.rootLogger=warn, file
У меня есть файл log4j.properties в неправильном месте? Или здесь что-то другое происходит?