我有一个直接使用 log4j 的大型 Web 项目,以及许多 3rd-party 库和日志库的组合。
- 我们的代码库 - 直接使用 log4j。
- Hibernate - 使用 slf4j 和 slf4j-log4j 绑定。
- Spring - 使用公共日志记录。因此,它使用 jcl-over-slf4j 桥 api、slf4j 本身和 slf4j-log4j 绑定。
- 其他众多库,使用公共日志记录或 log4j。
我正在考虑将我们自己的代码库迁移到 slf4j api,但我不确定好处是否足够强大并且值得付出努力。目前我知道以下好处:
- 更清洁的 API。
- 性能改进 - 即使用参数化日志记录方法的能力。
- 将来能够轻松切换到 logback(目前 logback 是不可能的)。
- 不需要额外的罐子,因为我已经有了它们。
还有其他好处吗?有什么我不知道的缺点吗?