日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

springboot日志的实现方式(两种log4j2.properties和log4j2.yml)

發布時間:2025/3/12 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 springboot日志的实现方式(两种log4j2.properties和log4j2.yml) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

第一種:基于log4j2.properties

首先pom.xml中導入jar

<dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.21</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>1.7.21</version></dependency>

然后在src/main/resources目錄下新建log4j2.properties,該日志文件可以實現,每天新建一個日志文件,前一天的日志以前一天的日期為結尾

### \u8BBE\u7F6E### log4j.rootLogger = debug,stdout,D,E,I### \u8F93\u51FA\u4FE1\u606F\u5230\u63A7\u5236\u62AC ### log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.encoding=utf-8 log4j.appender.stdout.Target = System.out log4j.appender.stdout.layout = org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%nlog4j.appender.D = org.apache.log4j.DailyRollingFileAppender log4j.appender.D.File = D://logs/debug.log log4j.appender.file.DatePattern='.'yyyy-MM-dd log4j.appender.D.Append = true log4j.appender.D.Threshold = DEBUG log4j.appender.D.layout = org.apache.log4j.PatternLayout log4j.appender.D.layout.ConversionPattern =%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%nlog4j.appender.E = org.apache.log4j.DailyRollingFileAppender log4j.appender.E.File =D://logs/error.log log4j.appender.file.DatePattern='.'yyyy-MM-dd log4j.appender.E.Append = true log4j.appender.E.Threshold = ERROR log4j.appender.E.layout = org.apache.log4j.PatternLayout log4j.appender.E.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%nlog4j.appender.I = org.apache.log4j.DailyRollingFileAppender log4j.appender.I.File =D://logs/info.log log4j.appender.file.DatePattern='.'yyyy-MM-dd log4j.appender.I.Append = true log4j.appender.I.Threshold = INFO log4j.appender.I.layout = org.apache.log4j.PatternLayout log4j.appender.I.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

第二種方式:基于log4j2.yml配置文件

首先pom.xml中導入jar

<dependency> <!-- exclude掉spring-boot的默認log配置 --><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依賴 --><!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-log4j2 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-log4j2</artifactId><version>2.0.0.RELEASE</version></dependency><!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.dataformat/jackson-dataformat-yaml --><dependency><!-- 加上這個才能辨認到log4j2.yml文件 --><groupId>com.fasterxml.jackson.dataformat</groupId><artifactId>jackson-dataformat-yaml</artifactId></dependency>

然后在src/main/resources目錄下新建log4j2.yml文件

# 共有8個級別,按照從低到高為:ALL < TRACE < DEBUG < INFO < WARN < ERROR < FATAL < OFF。 Configuration: status: warn monitorInterval: 30Properties: # 定義全局變量 Property: # 缺省配置(用于開發環境)。其他環境需要在VM參數中指定,如下: #測試:-Dlog.level.console=warn -Dlog.level.xjj=trace #生產:-Dlog.level.console=warn -Dlog.level.xjj=info - name: log.level.console value: debug - name: log.sql.level value: trace - name: LOG_HOME value: /bdmsweb-log/logs Appenders: Console: #輸出到控制臺 name: CONSOLE target: SYSTEM_OUT ThresholdFilter: level: ${sys:log.level.console} # “sys:”表示:如果VM參數中沒指定這個變量值,則使用本文件中定義的缺省全局變量值 onMatch: ACCEPT onMismatch: DENY PatternLayout: pattern: "%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n" RollingFile: # 輸出到文件,超過128MB歸檔 - name: info ignoreExceptions: false fileName: ${LOG_HOME}/${date:yyyy-MM}/${date:yyyy-MM-dd}/info.log filePattern: "${LOG_HOME}/${date:yyyy-MM}/info-%d{yyyy-MM-dd}-%i.log.gz" ThresholdFilter: level: infoonMatch: ACCEPT onMismatch: DENY PatternLayout: pattern: "%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n" Policies: SizeBasedTriggeringPolicy: size: "128 MB" DefaultRolloverStrategy: max: 1000 - name: debug ignoreExceptions: false fileName: ${LOG_HOME}/${date:yyyy-MM}/${date:yyyy-MM-dd}/debug.log filePattern: "${LOG_HOME}/$${date:yyyy-MM}/debug-%d{yyyy-MM-dd}-%i.log.gz" ThresholdFilter: level: debugonMatch: ACCEPT onMismatch: DENY PatternLayout: pattern: "%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n" Policies: SizeBasedTriggeringPolicy: size: "128 MB" DefaultRolloverStrategy: max: 1000 - name: error ignoreExceptions: false fileName: ${LOG_HOME}/${date:yyyy-MM}/${date:yyyy-MM-dd}/error.log filePattern: "${LOG_HOME}/$${date:yyyy-MM}/error-%d{yyyy-MM-dd}-%i.log.gz" ThresholdFilter: level: erroronMatch: ACCEPT onMismatch: DENYPatternLayout: pattern: "%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n" Policies: SizeBasedTriggeringPolicy: size: "128 MB" DefaultRolloverStrategy: max: 1000 Loggers: Root: level: info AppenderRef: - ref: CONSOLE- ref: info - ref: debug - ref: error Logger: # 為com.xjj包配置特殊的Log級別,方便調試 - name: cnki.bdms.module.search.daladditivity: true level: ${sys:log.sql.level} AppenderRef:- ref: info - ref: debug - ref: error - ref: CONSOLE

最后在application.yml中添加配置

logging:config: classpath:log4j2.yml

完成以上配置之后 運行項目,便可以在D盤/bdmsweb-log/logs 目錄下看到以日期為區分的日志文件

總結

以上是生活随笔為你收集整理的springboot日志的实现方式(两种log4j2.properties和log4j2.yml)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。