如何找到slf4j绑定到哪个库?

2022-08-31 17:19:27

我正在使用slf4j在我的应用程序中登录。我明白slf4j的目的。我想知道如何找出当前绑定到哪个日志记录库slf4j。我在引用的库中有log4j。我假设slf4j已经将自己绑定到log4j。

我想知道的是,有没有办法明确确认这种约束?


答案 1

只需执行 SLF4J 所做的操作即可发现绑定:

final StaticLoggerBinder binder = StaticLoggerBinder.getSingleton();

现在,您可以尝试找出在我的情况下实际实现

System.out.println(binder.getLoggerFactory());
System.out.println(binder.getLoggerFactoryClassStr());

这打印:

ch.qos.logback.classic.LoggerContext[default]
ch.qos.logback.classic.selector.DefaultContextSelector

答案 2

StaticLoggerBindergetLoggerFactoryClassStr()方法可能是你正在寻找的。


推荐