logback對比log4j的有點在此就不贅述了。
由於在使用dubbo,日誌生成是通過log4j實現的,自己的框架是通過logback的方式生成日誌,需要在代碼在不修改的情況下直接將日誌生成至logback指定配置中。
《slf4j官方文檔》傳統橋接API 一文中介紹了使用log4j-over-slf4j.jar替代log4j.jar,通過橋接的方式將原有的日誌生成至logback配置中。
- maven 依賴
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.25</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
<version>1.7.12</version>
<exclusions>
<exclusion>
<artifactId>slf4j-api</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
</exclusions>
</dependency>
將log4j-over-slf4j.jar導入至項目,排除log4j.jar,配置好使用logback需要的環境,日誌生成至logback.xml配置指定的文件中。