springboot的maven專案整合log4j
我的專案使用的是springboot的1.4.1的版本,在1.4以上的版本中,需要整合log4j2,用log4j的話會報錯
過程如下:
1、 由於springboot本身已經集成了日誌相關的log4j或slf4j依賴,我們需要在pom.xml中先去掉這些依賴,再新增log4j2的依賴:
<!--去掉springboot本身日誌依賴--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency> <!--log4j2--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j2</artifactId> </dependency> |
2、 新增 log4j2.xml檔案(與 application.properties 同一個包下),內容如下:
<?xml version="1.0" encoding="UTF-8"?> <!--啟動項設定為 trace,載入 springboot 啟動內部各種詳細輸出--> <Configuration status="trace"> <Appenders> <!--新增一個控制檯追加器--> <Console name="Console" target="SYSTEM_OUT" follow="true"> <PatternLayout> <pattern>[%-5p] %d %c - %m%n</pattern> </PatternLayout> </Console> <!--新增一個文字追加器,檔案位於根目錄下,名為log.log--> <File name="File" fileName="log.log"> <PatternLayout> <pattern>[%-5p] %d %c - %m%n</pattern> </PatternLayout> </File> </Appenders> <Loggers> <Logger name="com.github" level="debug" /> <!--記錄 qg.fangrui.boot 包及其子包 debug 及其以上的記錄,並輸出到檔案中--> <Logger name="qg.fangrui.boot" level="debug"> <!-- AppenderRef 可以控制檔案輸出物件--> <AppenderRef ref="File" /> </Logger> <!--根記錄全部輸出到控制檯上--> <Root level="debug"> <AppenderRef ref="Console" /> </Root> </Loggers> </Configuration> |
3、 在application.properties 中加入配置檔案的掃描位置
logging.config=classpath:log4j2.xml。。
至此,新增log4j2完成,啟動專案和請求路徑都會看到控制檯列印的日誌檔案