是否可以XML格式显示当前Log4j2(运行时)配置

时间:2019-07-13 16:31:03

标签: log4j2

我正在使用第三方开发的产品,他们在其中广泛使用了log4j2。当我的应用程序在其框架上运行时,我不想覆盖其现有配置,而只想在log4j上为现有的运行时配置编写一个追加程序。

有没有办法查看XML格式的log4j2实例的现有运行时配置?

我尝试了以下代码,但它给了我一个空白的xml。

代码:

        ConfigurationBuilder<BuiltConfiguration> builder= ConfigurationBuilderFactory.newConfigurationBuilder();
        LoggerContext ctx=(LoggerContext) LogManager.getContext(false);
        builder.setLoggerContext(ctx);
        builder.writeXmlConfiguration(System.out);

输出:

<?xml version="1.0" ?>
<Configuration>
</Configuration>

1 个答案:

答案 0 :(得分:1)

是的,这是可能的。作为log4j2模块之一的JMX client正是这样做的。

该功能由JMX package in the core module提供。