Spring?boot2.0?實現(xiàn)日志集成的方法(2)
前言:
上一章Spring boot2.0 日志集成方法分享(1)講解了spring boot日志簡單集成,將所有的日志都輸出到一個文件中,但是在實際的項目中,我們需要將日志進(jìn)行分類,常規(guī)日志、異常日志、監(jiān)控日志等,需要將日志輸出到不同的文件中。spring boot 日志默認(rèn)采用的是sf4j+logback實現(xiàn),默認(rèn)配置文件為logback-spring.xml
,如果需要輸出到不同的文件,需要自定義logback.xml文件。
logback.xml配置文件定義
<?xml version="1.0" encoding="UTF-8"?> <configuration> <property name="LOG_PATTERN" value="%date{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n" /> <property name="LOG_PATH" value="/logs"/> <!--控制臺日志格式--> <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <encoder charset="UTF-8"> <pattern>${LOG_PATTERN}</pattern> </encoder> </appender> <!--系統(tǒng)INFO級別日志--> <appender name="SYS_INFO" class="ch.qos.logback.core.rolling.RollingFileAppender"> <File>${LOG_PATH}/info.log</File> <append>true</append> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>INFO</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOG_PATH}/info-%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern> <maxHistory>15</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>10MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder charset="UTF-8"> <pattern>${LOG_PATTERN}</pattern> </encoder> </appender> <!--系統(tǒng)EEOR級別日志--> <appender name="SYS_ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender"> <File>${LOG_PATH}/error.log</File> <append>true</append> <!--error級別日志 --> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>ERROR</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOG_PATH}/error-%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern> <maxHistory>15</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>10MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder charset="UTF-8"> <pattern>${LOG_PATTERN}</pattern> </encoder> </appender> <root level="INFO"> <appender-ref ref="CONSOLE"/> <appender-ref ref="SYS_INFO"/> <appender-ref ref="SYS_ERROR"/> </root> </configuration>
配置說明 上述配置定義了info和error級別日志,分別輸出到不同的日志文件。日志文件采用的滾動策略,每個文件大小為10M,建議保存的日期為15天,便于有些異常具備以周為頻次發(fā)生的特點。
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOG_PATH}/error-%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern> <maxHistory>15</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>10MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy>
引用自定義logback.xml文件
在項目的application.yml文件中配置如下信息
logging: config: classpath:logback.xml
附加說明
默認(rèn)情況下日志配置文件存放在classpath路徑下,項目打包后日志配置文件存放在jar包中,如果需要修改日志文件的信息(例如修改存放路徑),需要重新打包,即為不方便,解決方案為將日志配置文件提取到項目外,引入外部的logback.xml文件
logging: config: file:config/logback.xml
file:文件的相對路徑。
本文主要講解的為常規(guī)日志和異常日志,下一張講解監(jiān)控日志輸出。
到此這篇關(guān)于Spring boot2.0 實現(xiàn)日志集成的方法(2)的文章就介紹到這了,更多相關(guān)Spring boot日志集成內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
如何使用Spring MVC的消息轉(zhuǎn)換器設(shè)置日期格式
這篇文章主要介紹了如何使用Spring MVC的消息轉(zhuǎn)換器設(shè)置日期格式,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-07-07JavaEE開發(fā)基于Eclipse的環(huán)境搭建以及Maven Web App的創(chuàng)建
本文主要介紹了如何在Eclipse中創(chuàng)建的Maven Project,本文是JavaEE開發(fā)的開篇,也是基礎(chǔ)。下面內(nèi)容主要包括了JDK1.8的安裝、JavaEE版本的Eclipse的安裝、Maven的安裝、Tomcat 9.0的配置、Eclipse上的M2Eclipse插件以及STS插件的安裝。2017-03-03Java char[]數(shù)組轉(zhuǎn)成String類型詳細(xì)介紹
這篇文章詳細(xì)介紹了Java char[]數(shù)組轉(zhuǎn)成String類型(char to String)的方法,文章中有詳細(xì)的代碼示例,需要的朋友可以參考閱讀2023-04-04Java中Future、FutureTask原理以及與線程池的搭配使用
這篇文章主要為大家詳細(xì)介紹了Java中Future、FutureTask原理以及與線程池的搭配使用,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-09-09spring 或者spring boot 調(diào)整bean加載順序的方式
這篇文章主要介紹了spring 或者spring boot 調(diào)整bean加載順序的方式,本文通過實例代碼講解三種調(diào)整類加載順序的方式,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03