如果第三方依赖项使用具体框架(例如log4j)进行日志记录,并且我希望我的应用程序通过slf4j进行所有日志记录,则可以配置log4j(以XML,属性文件等形式)以重定向日志消息发送到slf4j API? (这将在运行时绑定(bind)到我选择的具体slf4j绑定(bind)。)
通过相同的API将所有日志消息发送到同一位置将是一个很好的选择。
我什至不介意我是否必须做一些疯狂的事情,例如将log4j.properties指向一些临时代码(我会写),从而将流量定向到slf4j!
我只是不知道从哪里开始。提前致谢!
最佳答案
当然可以,它在documentation中进行了详细说明:
它既骇客又巧妙-您将删除log4j.jar
并将其替换为log4j-over-slf4j.jar
。后者的JAR在相同的程序包中镜像Log4J类,因此甚至不必重新编译您的应用程序和库。但是新的实现只是简单地重新路由到SLF4J。
关于java - 将log4j重新路由到slf4j,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9384729/