Log4j 1.2bridge

Log4j 1.2 Bridge 允许编码为使用 Log4j 1.2 API 的应用程序改用 Log4j 2.

Requirements

Log4j 1.2bridge 取决于 Log4j 2 API。如果包含 Log4j 2 Core 模块,则以下 Log4j 1.x 方法的行为将有所不同:

MethodWithout log4j-coreWith log4j-core
Category.getParent()Returns null返回父 Logger
Category.setLevel()NoOp设置 Logger 级别
Category.setPriority()NoOp设置 Logger 级别
Category.getAdditivity()Returns false返回 Logger 的可加性设置
Category.setAdditivity()NoOp设置 LoggerConfig 的可加性
Category.getResourceBundle()NoOp返回与 Logger 关联的资源包
BasicConfigurator.configure()NoOp重新配置 Log4j 2

如果不存在 log4j-core,则使用 Log4j 1.2 API 进行的调用中的位置信息将不准确。如果没有 Log4j 2,则不支持将 tp 将 Log4j 1.x 配置转换为 Log4j 2 的配置程序包。

有关更多信息,请参见Runtime Dependencies

Usage

要使用 Log4j Legacy Bridge,只需从应用程序中删除所有 Log4j 1.x jar,然后将其替换为 Bridge jar。一旦就位,所有使用 Log4j 1.x 的日志记录都将路由到 Log4j2.但是,尝试通过添加 Appender,Filters 来修改旧 Log4j 的应用程序如果尝试通过这些方法验证这些操作是否成功,则可能会遇到问题。基本上没有人。