最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot整合logback的示例代碼

 更新時(shí)間:2022年04月07日 15:33:59   作者:張瑞豐  
Logback是由log4j創(chuàng)始人設(shè)計(jì)的又一個(gè)開(kāi)源日志組件,logback分為三個(gè)模塊,在文章開(kāi)頭給大家介紹的很明確,接下來(lái)通過(guò)本文重點(diǎn)介紹下SpringBoot整合logback的方法,需要的朋友可以參考下

Logback簡(jiǎn)介

1、logback和log4j是同一個(gè)作者,logback可以看作是log4j的升級(jí)版

2、logback分為三個(gè)模塊, logback-core, logback-classic 和logback-access,其中 logback-core是核心,其他兩個(gè)模塊依賴core,這個(gè)logback-classic是log4j的改善版本,并且原生實(shí)現(xiàn)了SLF4J門面(具體參考前文:Java中SLF4J日志框架的實(shí)現(xiàn)原理)。模塊logback-access可以集成于Servlet容器,比如Tomact和Jetty。

3、你可以基于logback-core自己創(chuàng)建其他的模塊。

Logback相比log4j的優(yōu)勢(shì)

比log4j更快,重寫了內(nèi)核,在一些關(guān)鍵路徑上性能提升10倍,內(nèi)存占用也更少。
經(jīng)過(guò)大量的測(cè)試,和log4j測(cè)試不在一個(gè)量級(jí)。
logback-classic是SLF4J的實(shí)現(xiàn),切換其他日志框架非常方便,
文檔豐富并且不斷更新,支持Groovy風(fēng)格的配置文件
配置文件自動(dòng)重新加載,如果更新了配置文件,logback-classic可以自動(dòng)重新加載。
自動(dòng)刪除日期較老的日志文件,maxHistory屬性,你可以控制已經(jīng)產(chǎn)生日志文件的最大數(shù)量。如果設(shè)置maxHistory為12,那那些log文件超過(guò)12個(gè)月的都會(huì)被自動(dòng)移除。
自動(dòng)壓縮歸檔的日志文件,壓縮文件是異步進(jìn)行,不影響應(yīng)用。
配置文件可以處理不同的環(huán)境開(kāi)發(fā),測(cè)試,生產(chǎn)),這樣一個(gè)配置文件就可以適應(yīng)多個(gè)環(huán)境。
SiftingAppender(一個(gè)非常多功能的Appender) 它可以用來(lái)分割日志文件根據(jù)任何一個(gè)給定的運(yùn)行參數(shù)。如,SiftingAppender能夠區(qū)別日志事件跟進(jìn)用戶的Session,然后每個(gè)用戶會(huì)有一個(gè)日志文件。

下面看下SpringBoot整合logback的方法。

spring-boot-starter-web這個(gè)包幾乎是使用SpringBoot時(shí)必備的,其內(nèi)部已經(jīng)依賴了logback的組件,也就是說(shuō)SpringBoot已經(jīng)幫你整合了logback。

只需要在resources目錄加上logback.xml文件,寫入內(nèi)容如下:

其中路徑、包名稱、保留周期等 根據(jù)自己的需要進(jìn)行修改即可

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- 日志存放路徑 -->
	<property name="log.path" value="./logs" />
    <!-- 日志輸出格式 -->
	<property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />

	<!-- 控制臺(tái)輸出 -->
	<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
		<encoder>
			<pattern>${log.pattern}</pattern>
		</encoder>
	</appender>
	
	<!-- 系統(tǒng)日志輸出 -->
	<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
	    <file>${log.path}/sys-info.log</file>
        <!-- 循環(huán)政策:基于時(shí)間創(chuàng)建日志文件 -->
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 日志文件名格式 -->
			<fileNamePattern>${log.path}/sys-info.%d{yyyy-MM-dd}.log</fileNamePattern>
			<!-- 日志最大的歷史 60天 -->
			<maxHistory>60</maxHistory>
		</rollingPolicy>
		<filter class="ch.qos.logback.classic.filter.LevelFilter">
            <!-- 過(guò)濾的級(jí)別 -->
            <level>INFO</level>
            <!-- 匹配時(shí)的操作:接收(記錄) -->
            <onMatch>ACCEPT</onMatch>
            <!-- 不匹配時(shí)的操作:拒絕(不記錄) -->
            <onMismatch>DENY</onMismatch>
        </filter>
	<appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
	    <file>${log.path}/sys-error.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${log.path}/sys-error.%d{yyyy-MM-dd}.log</fileNamePattern>
        </rollingPolicy>
        <encoder>
            <pattern>${log.pattern}</pattern>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>ERROR</level>
			<!-- 匹配時(shí)的操作:接收(記錄) -->
			<!-- 不匹配時(shí)的操作:拒絕(不記錄) -->
    </appender>
	<!-- 用戶訪問(wèn)日志輸出  -->
    <appender name="sys-user" class="ch.qos.logback.core.rolling.RollingFileAppender">
		<file>${log.path}/sys-user.log</file>
            <!-- 按天回滾 daily -->
            <fileNamePattern>${log.path}/sys-user.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- 日志最大的歷史 60天 -->
            <maxHistory>60</maxHistory>
	<!-- 系統(tǒng)模塊日志級(jí)別控制  -->
	<logger name="cn.vantee" level="info" />
	<!-- Spring日志級(jí)別控制  -->
	<logger name="org.springframework" level="warn" />

	<root level="info">
		<appender-ref ref="console" />
	</root>
	<!--系統(tǒng)操作日志-->
    <root level="info">
        <appender-ref ref="file_info" />
        <appender-ref ref="file_error" />
    </root>
	<!--系統(tǒng)用戶操作日志-->
    <logger name="sys-user" level="info">
        <appender-ref ref="sys-user"/>
    </logger>
</configuration> 

在yml文件中加入如下配置:

logging:
  level:
    cn.vantee: debug
    cn.vantee.mapper: trace
  config: classpath:logback.xml

在需要打印日志的類上加入@Slf4j注解,即可使用log.info()、log.error()、log.debug()...打印日志。日志會(huì)自動(dòng)記錄在logback.xml中指定的文件內(nèi)

到此這篇關(guān)于SpringBoot整合logback的文章就介紹到這了,更多相關(guān)SpringBoot整合logback內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 淺析Spring4新特性概述

    淺析Spring4新特性概述

    Spring 4.1并沒(méi)有特別吸引眼球的地方,主要還是增強(qiáng)和一些依賴的版本升級(jí)。本文重點(diǎn)給大家介紹Spring4新特性概述,感興趣的朋友一起看看吧
    2017-09-09
  • SpringBoot項(xiàng)目熱部署的實(shí)現(xiàn)

    SpringBoot項(xiàng)目熱部署的實(shí)現(xiàn)

    SpringBoot項(xiàng)目熱部署是一種讓開(kāi)發(fā)人員在修改代碼后無(wú)需重啟應(yīng)用即可看到更改效果的技術(shù),通過(guò)使用SpringBoot的DevTools等工具,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-09-09
  • SpringCloud環(huán)境搭建過(guò)程之Rest使用小結(jié)

    SpringCloud環(huán)境搭建過(guò)程之Rest使用小結(jié)

    這篇文章主要介紹了SpringCloud環(huán)境搭建之Rest使用,本文通過(guò)實(shí)例代碼圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-08-08
  • Spring?Security過(guò)濾器鏈體系的實(shí)例詳解

    Spring?Security過(guò)濾器鏈體系的實(shí)例詳解

    這篇文章主要介紹了Spring?Security過(guò)濾器鏈體系,通過(guò)思維導(dǎo)圖可以很好的幫助大家理解配置類的相關(guān)知識(shí),結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-02-02
  • redis統(tǒng)計(jì)APP在線人數(shù)的實(shí)例

    redis統(tǒng)計(jì)APP在線人數(shù)的實(shí)例

    這篇文章主要介紹了redis統(tǒng)計(jì)APP在線人數(shù)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-11-11
  • Java 比較接口comparable與comparator區(qū)別解析

    Java 比較接口comparable與comparator區(qū)別解析

    這篇文章主要介紹了Java 比較接口comparable與comparator區(qū)別解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • Redis?+?Java攔截器實(shí)現(xiàn)用戶匿名和非匿名訪問(wèn)

    Redis?+?Java攔截器實(shí)現(xiàn)用戶匿名和非匿名訪問(wèn)

    本文主要介紹了Redis?+?Java攔截器實(shí)現(xiàn)用戶匿名和非匿名訪問(wèn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • MyBatis實(shí)現(xiàn)Mysql數(shù)據(jù)庫(kù)分庫(kù)分表操作和總結(jié)(推薦)

    MyBatis實(shí)現(xiàn)Mysql數(shù)據(jù)庫(kù)分庫(kù)分表操作和總結(jié)(推薦)

    這篇文章主要介紹了MyBatis實(shí)現(xiàn)Mysql數(shù)據(jù)庫(kù)分庫(kù)分表操作和總結(jié),需要的朋友可以參考下
    2017-08-08
  • java中List刪除時(shí)需要的注意事項(xiàng)

    java中List刪除時(shí)需要的注意事項(xiàng)

    最近在利用java中的LIST在刪除時(shí)發(fā)現(xiàn)了一個(gè)錯(cuò)我,通過(guò)查找相關(guān)的資料終于解決了,覺(jué)著有必要分享處理給同樣遇到這個(gè)問(wèn)題的朋友參考,下面這篇文章主要介紹了java中List刪除時(shí)需要的注意事項(xiàng),需要的朋友可以一起來(lái)看看吧。
    2017-01-01
  • Java Unsafe學(xué)習(xí)筆記分享

    Java Unsafe學(xué)習(xí)筆記分享

    今天小編就為大家分享一篇Java Unsafe學(xué)習(xí)筆記,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11

最新評(píng)論

富源县| 张家口市| 北流市| 手游| 剑阁县| 大名县| 昆山市| 临澧县| 梁河县| 晋宁县| 都兰县| 应用必备| 黎城县| 邳州市| 乌拉特中旗| 遂昌县| 平江县| 禹城市| 图木舒克市| 阿瓦提县| 天祝| 清水河县| 太和县| 东光县| 北川| 荔波县| 儋州市| 邵武市| 芮城县| 玛多县| 孟州市| 枝江市| 嘉禾县| 贞丰县| 山东省| 鄂尔多斯市| 河东区| 大新县| 新巴尔虎左旗| 珲春市| 罗平县|