如果Logback正在读取一些logback.xml文件,是否可以显示它正在读取哪个文件以及在哪个文件路径中?
我有使用logback的问题,我想到了一个想法,也许一些第三方jar文件提供了自己的logback.xml而不是我的,它的文件被Logback用作配置文件。
如果我在内部学习哪个文件以及Logback用作配置文件的路径,我可能会生成一些解决方案,以便最终使用我自己的logback.xml配置。
答案 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));