微服務啓動時日誌衝突解決方案
logback與log4j 日誌衝突異常
如上所示。SpringBoot 默認的日誌格式是 logback
,但由於項目中使用的是log4j方式的日誌格式,所以需要禁用 logback
的日誌格式,再配置 log4j
的格式。
項目中,內置了 logback
日誌格式的依賴是:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
在依賴中使用如下代碼禁用 `logback’ 的日誌即可:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
以上是本實例中的做法,一般做法如下:
按住 Ctrl
,鼠標點擊 spring-boot-starter-jdbc
進入pom文件,有如下依賴:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
再按住 Ctrl
,鼠標點擊 spring-boot-starter
進入pom文件,有如下依賴:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</dependency>
則在微服務中的 spring-boot-starter-jdbc
依賴中添加 spring-boot-starter-logging
的 <exclusion>
即可。
項目啓動後沒有日誌環境異常
當微服務啓動後出現如上異常,則需要手動添加 ‘log4j’ 的配置文件
-
添加配置文件
- 在
src/main/resource/
目錄下添加log4j.properties
文件
# Configure logging for testing: optionally with log file #log4j.rootLogger=debug,appender log4j.rootLogger=info,appender #log4j.rootLogger=error,appender #\u8F93\u51FA\u5230\u63A7\u5236\u53F0 log4j.appender.appender=org.apache.log4j.ConsoleAppender #\u6837\u5F0F\u4E3ATTCCLayout log4j.appender.appender.layout=org.apache.log4j.TTCCLayout
- 在
-
在啓動類中添加自動掃描日誌配置文件的方法
@SpringBootApplication
@EnableServiceComb
public class GovbudgetApplication {
public static void main(String[] args) throws Exception {
SpringApplication.run(GovbudgetApplication.class,args);
BasicConfigurator.configure();
}
}
以上。