将 slf4j 路由到 log4j,而不是相反

route slf4j to log4j, not the opposite

众所周知如何将使用 log4j 的代码改编为 slf4j 并将后者作为主要记录器,包括将像 LogBack 这样的插件实现作为具体的应用程序记录器。

相反的路线呢?我有一个到处都在使用 log4j 的大型应用程序,将它迁移到 slf4j 会非常困难,例如我有许多命令行工具都有自己的 log4j 配置文件。

现在我必须使用一个将日志消息发送到 slf4j 接口的小型库来扩展应用程序。

有没有办法将所有 slf4j 调用重新路由到现有的 log4j,这样,例如,我也可以依靠现有的应用程序配置来调整新库的日志记录行为?

Is there a way to re-route all slf4j calls to the already existing log4j?

slf4j-log4j12 模块将为您服务。有关此模块的更多信息 here

总体而言,您将需要:

  • log4j(最新1.2.17):针对已有的依赖和重新路由
  • slf4j-api (最新1.7.25): for new slf4j依赖库
  • slf4j-log4j12(最新1.7.25):用于重路由