有什么方法可以通过编程方式修改log4j2 xml配置的元素吗?

时间:2019-10-29 18:23:26

标签: log4j2

我正在尝试扩展XMLConfiguration类并更改PatternLayout中的模式值,但是无法进行更改。模式保留在旧字符串中。 log4j2是否仅对现有静态配置XML文件启用添加/删除操作?

1 个答案:

答案 0 :(得分:0)

好的,所以我发现一种方法是在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();

}