Переместите Jett httpclient отладочные журналы из rootLogger - PullRequest
0 голосов
/ 25 сентября 2019

Мне нужно получить журналы отладки Jetty httpclient, и я использую SLF4j.Мой пример программы выглядит следующим образом:

private final static Logger logger =  Logger.getRootLogger();

public static void main(String[] args) {
    DailyRollingFileAppender timeAppender = new DailyRollingFileAppender();
    timeAppender.setDatePattern("'.'yyyy-MM-dd-HH-mm");//write at start of every minute
    timeAppender.setName("FileLogger");
    timeAppender.setFile("/path-to-log/client.log");
    timeAppender.setLayout(new PatternLayout("%t %p %d %-5p [%c{1}] %m%n"));
    timeAppender.setThreshold(Level.ALL);
    timeAppender.setAppend(true);
    timeAppender.activateOptions();
    logger.setAdditivity(false);
    logger.addAppender(timeAppender);

    logger.debug("JDK Used-->"+System.getProperty("java.version"));
    //HttpClient code follows
    ......

и печатаются мои файлы журнала,

main DEBUG 2019-09-25 20:26:07,347 DEBUG [JettyJMX] JDK -->1.8.0_212
main DEBUG 2019-09-25 20:26:07,485 DEBUG [log] Logging to org.slf4j.impl.Log4jLoggerAdapter(org.eclipse.jetty.util.log) via org.eclipse.jetty.util.log.Slf4jLog
main INFO 2019-09-25 20:26:07,488 INFO  [log] Logging initialized @370ms to org.eclipse.jetty.util.log.Slf4jLog
main DEBUG 2019-09-25 20:26:07,591 DEBUG [ContainerLifeCycle] HttpClient@65e579dc{STOPPED} added 
....

Но я не хочу использовать rootLogger, так как другие сторонние пакеты могут использовать slf4j в моем приложениипоэтому я хочу перенаправить журналы отладки причала в отдельный файл.Итак, вместо использования RootLogger я попытался использовать регистратор классов, такой как

final static Logger logger =  Logger.getLogger(MyClass.class.getName());

, который только печатал,

main DEBUG 2019-09-25 20:49:03,676 DEBUG [JettyJMX] JDK -->1.8.0_212 

Используемые баночки SLF4j: log4j-1.2.15.jar, slf4j-api-1.7.25.jar, slf4j-log4j12-1.7.25.jar

Используемая версия Jetty - 9.4.19

Используется JDK: 1.8

Я могу получить только журналы отладкиЕсли я использую rootLogger, есть ли способ или конфигурация для перенаправления журналов отладки из RootLogger на любые другие регистраторы?

Заранее спасибо

...