显示Logback正在读取哪个文件以及在哪个文件路径中?

时间:2014-08-29 20:13:57

标签: java slf4j logback

如果Logback正在读取一些logback.xml文件,是否可以显示它正在读取哪个文件以及在哪个文件路径中?

我有使用logback的问题,我想到了一个想法,也许一些第三方jar文件提供了自己的logback.xml而不是我的,它的文件被Logback用作配置文件。

如果我在内部学习哪个文件以及Logback用作配置文件的路径,我可能会生成一些解决方案,以便最终使用我自己的logback.xml配置。

2 个答案:

答案 0 :(得分:0)

关注源代码,最后到此结束:

public static void printLogConfigUrl() {

    ch.qos.logback.core.joran.spi.ConfigurationWatchList wl =
            ch.qos.logback.core.joran.util.ConfigurationWatchListUtil.getConfigurationWatchList(
            (ch.qos.logback.classic.LoggerContext) org.slf4j.LoggerFactory.getILoggerFactory());
    System.out.println(wl.getMainURL());
}

作为参考,我从ContextInitializer开始,让GenericConfigurator转到上面显示的ConfigurationWatchListUtil

答案 1 :(得分:0)

感谢@vanOekel,我找到了一种方法来发出Logback用于配置的文件;

LoggerContext loggerContext = ((ch.qos.logback.classic.Logger) logger).getLoggerContext();
System.out.println(ConfigurationWatchListUtil.getMainWatchURL(loggerContext));