前言
第一次玩SpringBoot,想將日誌信息打印,log4j的依賴也成功添加了。然而在進行打印的時候居然沒有達到預期!十分無奈,好不容易找到問題了,現在做個mark,記錄下這個注意事項,以後防止再踩一次!
log4j配置
#打印到控制檯
log4j.appender.zhengkw.MyConsole=org.apache.log4j.ConsoleAppender
log4j.appender.zhengkw.MyConsole.target=System.err
log4j.appender.zhengkw.MyConsole.layout=org.apache.log4j.PatternLayout
log4j.appender.zhengkw.MyConsole.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %6p (%c:%M) - %m%n
#打印到日誌文件
log4j.appender.zhengkw.File=org.apache.log4j.DailyRollingFileAppender
# 到linux要改成linux地址
#log4j.appender.zhengkw.File.file=/home/zhengkw/gmall/app.log
log4j.appender.zhengkw.File.file=E:\\swimmer\\log\\gmall.log
log4j.appender.zhengkw.File.DatePattern='.'yyyy-MM-dd
log4j.appender.zhengkw.File.layout=org.apache.log4j.PatternLayout
log4j.appender.zhengkw.File.layout.ConversionPattern=%m%n
#聲明
log4j.logger.com.zhengkw.gmalllogger.LoggerController=info,zhengkw.File,zhengkw.MyConsole
注意1
聲明時注意 加粗位置放的是全類名!是需要打印日誌的類的全類名!
log4j.logger.com.zhengkw.gmalllogger.LoggerController=info,zhengkw.File,zhengkw.MyConsole
後面聲明的是打印的級別和一些變量名
注意2
因爲SpringBoot自帶了一個spring-boot-starter-logging,默認是用他來打印日誌信息的,所以就算依賴裏添加了log4j,而且也將配置文件放在對應位置也不會生效!所以要將spring的這個依賴排除
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 排除依賴 -->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- 添加 spring log4j 支持 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j</artifactId>
<version>1.3.8.RELEASE</version>
</dependency>