Программная конфигурация log4j2 не работает
Я пытаюсь настроить log4j2 программно, аналогично документам ( http://logging.apache.org/log4j/2.x/manual/customconfig.html):
ConfigurationBuilder<BuiltConfiguration> builder = ConfigurationBuilderFactory.newConfigurationBuilder();
builder.setStatusLevel(Level.TRACE);
builder.setConfigurationName("Config");
AppenderComponentBuilder console = builder.newAppender("Stdout", "Console")
.addAttribute("target", ConsoleAppender.Target.SYSTEM_OUT)
.add(builder.newLayout("PatternLayout").addAttribute("pattern", logFormat));
builder.add(console);
builder.add(builder.newRootLogger(Level.DEBUG).add(builder.newAppenderRef("Stdout")));
Configurator.initialize(builder.build());
LogManager.getLogger("foo.bar").debug("TestMsg");
Однако сообщение журнала в конце ничего не записывает на консоль. Меняя его на error
что-то регистрирует Я не могу понять, что не так из журналов трассировки. Что я пропустил, почему не ведется отладка логов?
РЕДАКТИРОВАТЬ:
установка follow: true
на ConsoleAppender
(мы меняем стандартный вывод в ситуации, когда это выполняется), и добавляем это в конец, чтобы он записывал вещи:
Configurator.setRootLevel(Level.DEBUG);
Тем не менее, он не использует наш указанный формат журнала, он использует простой шаблон преобразования - даже не формат по умолчанию! Могу ли я включить ведение журнала в журнале, чтобы выяснить, почему он это делает - запись в журнал трассировки состояния выполняется только при запуске и завершении работы?