Есть ли способ изменить элемент конфигурации xml log4j2 программно? - PullRequest
0 голосов
/ 29 октября 2019

Я пытаюсь расширить класс XMLConfiguration и изменить значение шаблона в PatternLayout, но изменение не может быть сделано. Шаблон остается со старой строкой. Включает ли log4j2 операции добавления / удаления в существующий XML-файл статической конфигурации?

1 Ответ

0 голосов
/ 29 октября 2019

хорошо, поэтому я обнаружил, что один из способов сделать это - просто пройтись по rootNode и изменить желаемое свойство непосредственно перед вызовом super.doConfigure(). например:

@Override
protected void doConfigure() {
  final String pattern = "%d{yyyy-MM-dd HH:mm}";
  if(getRootNode().getChildren() != null) {
     getRootNode().getChildren().get(0).getChildren().get(0).setValue(pattern);
  }
  super.doConfigure();

}
...