原文出处:点我
考虑到logback日志组件性能比log4j好,所以项目开发过程中抛弃log4j改用logback。
log4j迁移到logback的步骤(只要三步):
第一 引入logback需要的jar包
第二 删除src下的log4j.properties文件,在src下创建logback.xml配置文件
项目之前的使用log4j.properties可以用 http://logback.qos.ch/translator/ 转换到等价的logback配置文件。PS:转换后的配置文件,pattern参数需要修改。
如log4j的pattern配置 %-d{yyyy-MM-dd HH:mm:ss,SSS} [%c:%L]-[%p] %m%n 在logback里面不在起效。
我把它调整为 %date [%level] [%thread] %logger{80} [%file : %line] %msg%n
另外按日期产生日志文件策略的pattern也需要修改(具体查看下文的logback.xml配置文件)。
具体含义是:
下面粘贴出项目在替换 logback 之前的log4j配置文件:
下面粘贴出项目使用的 logback.xml
第三 把打印日志类使用的logger类替换为SLF4J的logger类
如果软件只调用了
log4j的客户端API
或Jakarta Commons Logging (JCL) API
或java.util.logging API
就能用SLF4J迁移工具( http://www.slf4j.org/migrator.html )自动迁移到SLF4J。
下面是 slf4j 官网迁移log4j代码的示例:
MyClass is a sample class using JCL. Here it is before:
and after migration:
至此,log4j迁移到 logback 完成。