springboot(4)——日誌配置
阿新 • • 發佈:2018-11-01
[日誌配置目標】
- 1、區分info和error日誌
- 2、每天產生一個日誌檔案
- 3、輸出該日誌具體資訊(包名、類名、第幾行、時間…)
%d{HH: mm:ss.SSS}——日誌輸出時間
%thread——輸出日誌的程序名字
%-5level——日誌級別,並且使用5個字元靠左對齊
%logger{36}——日誌輸出者的包名+類名
%msg——日誌訊息
%n——平臺的換行符
在src/main/resources資源目錄下新建logback-spring.xml
檔案配置如下:
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<!-- 列印到console控制檯 -->
<appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>
%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
</pattern >
</layout>
</appender>
<appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!-- 只過濾某個具體Level -->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level> <!-- 指定ERROR Level -->
<onMatch>DENY</onMatch> <!-- 匹配ERROR Level就DENY拒絕, 不顯示 -->
<onMismatch>ACCEPT</onMismatch> <!-- 不匹配ERROR Level就DENY接受, 顯示 -->
</filter>
<encoder>
<pattern>
%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
</pattern>
</encoder>
<!--滾動策略-->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--路徑-->
<fileNamePattern>E:\xxx\notes\info.%d.log</fileNamePattern>
</rollingPolicy>
</appender>
<appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!-- 根據範圍過濾 -->
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>ERROR</level> <!-- 只接受error級別 -->
</filter>
<encoder>
<pattern>
%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
</pattern>
</encoder>
<!--滾動策略-->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--路徑-->
<fileNamePattern>E:\xxx\notes\error.%d.log</fileNamePattern>
</rollingPolicy>
</appender>
<root level="info">
<appender-ref ref="consoleLog" />
<appender-ref ref="fileInfoLog" />
<appender-ref ref="fileErrorLog" />
</root>
</configuration>
使用步驟:
* 1、在類前面加註解@Slf4j
* 2、直接使用log.info(…)…
【IDEA工具需安裝lombok外掛, log才不會標紅】