1. 程式人生 > 實用技巧 >lombok @Slf4j加入日誌輸出到指定檔案

lombok @Slf4j加入日誌輸出到指定檔案

lombok自帶一個日誌註解,在需要輸出日誌的地方加入@Slf4j就可以。

下面就可以呼叫log.info('xxx'); error,debug等方法。

那麼我們如何才能夠將日誌檔案輸出到指定檔案呢?這樣便於我們查詢,萬一有錯誤,如果沒有日誌檔案,那是很糟糕的事。

1、要確保pom.xml裡面有這個dependency

<dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true
</optional> <scope>provided</scope> </dependency>

2、新建檔案logback-spring.xml 儲存到src/main/resources目錄下。

<?xml version="1.0" encoding="UTF-8"?>
<configuration  scan="true" scanPeriod="10 seconds">
 
    <contextName>logback</contextName>
 
 
    <!-- 格式化輸出:%date表示日期,%thread表示執行緒名,%-5level:級別從左顯示5個字元寬度 %msg:日誌訊息,%n是換行符-->
    <property name="
LOG_PATTERN" value="%date{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n" /> <!-- 定義日誌儲存的路徑,不要配置相對路徑 --> <property name="FILE_PATH" value="/Users/xxx/Desktop/log/spring-log.%d{yyyy-MM-dd}.%i.log" /> <!-- 控制檯輸出日誌 --> <appender name="console" class="ch.qos.logback.core.ConsoleAppender
"> <!-- 日誌級別過濾INFO以下 --> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>INFO</level> </filter> <encoder> <!-- 按照上面配置的LOG_PATTERN來列印日誌 --> <pattern>${LOG_PATTERN}</pattern> </encoder> </appender> <!--每天生成一個日誌檔案,儲存30天的日誌檔案。rollingFile用來切分檔案的 --> <appender name="rollingFile" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${FILE_PATH}</fileNamePattern> <!-- keep 15 days' worth of history --> <maxHistory>30</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <!-- 日誌檔案的最大大小 --> <maxFileSize>2MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> <!-- 超出刪除老檔案 --> <totalSizeCap>1GB</totalSizeCap> </rollingPolicy> <encoder> <pattern>${LOG_PATTERN}</pattern> </encoder> </appender> <!-- project default level --> <logger name="net.sh.rgface.serive" level="ERROR" /> <!-- 日誌輸出級別 --> <root level="INFO"> <appender-ref ref="console" /> <appender-ref ref="rollingFile" /> </root> </configuration>

#這裡將生成的日誌檔案儲存到 /Users/xxx/Desktop/log/

這樣桌面上log目錄就會生成一個日誌檔案。