Я пишу REST-сервис на Java (со стандартом JAX-RS на Tomcat 9) и хочу добавить журналы в мою программу для отслеживания его работы при вызове.
Поэтому я используюLog4j (версия 1.2.17) для записи моих журналов, и я хочу написать разные файлы журналов для каждой из моих служб, работающих на моей REST-службе, но мне нужно использовать только одно свойство log4j для всего приложения
Поэтому я хочу, чтобы такие журналы находились в моей папке журналов
--------------------------------
| Method | Log File |
|------------------------------|
| /A | MyRestService_A.log |
| /B | MyRestService_B.log |
--------------------------------
Поэтому я записываю это как конфигурацию Log4j ( restServiceLogger.properties ):
log4j.rootLogger=A,B
#/A
log4j.appender.A=org.apache.log4j.RollingFileAppender
log4j.appender.A.File=logs/MyRestService_A.log
log4j.appender.A.MaxFileSize=5MB
log4j.appender.A.MaxBackupIndex=5
log4j.appender.A.layout=org.apache.log4j.PatternLayout
log4j.appender.A.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %m%n
#/B
log4j.appender.B=org.apache.log4j.RollingFileAppender
log4j.appender.B.File=logs/MyRestService_B.log
log4j.appender.B.MaxFileSize=5MB
log4j.appender.B.MaxBackupIndex=5
log4j.appender.B.layout=org.apache.log4j.PatternLayout
log4j.appender.B.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %m%n
Затемв методе / A я инициализирую регистратор следующим образом:
PropertyConfigurator.configure("conf/restServiceLogger.properties");
Logger log = Logger.getLogger("A");
Затем в методе / B я инициализирую регистратор следующим образом:
PropertyConfigurator.configure("conf/restServiceLogger.properties");
Logger log = Logger.getLogger("B");
Проблема в том, что когда я пишу свои журналы, все они записываются в файл журнала / A ( MyRestService_A.log ).
Как это исправить, используя толькоодно свойство для всего проекта?
Спасибо