亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

Spring Boot整合logback一個簡單的日志集成架構

2024-07-14 08:43:27
字體:
來源:轉載
供稿:網友

一、業務需求

在項目開發和運維過程中需要通過日志來分析問題,解決問題以保證項目的正常運行。通過SpringBoot自帶的日志管理相對比較簡單,已無法滿足日常的運維需求,需要對日志文件進行分時分類管理,剛好通過學習接觸到了logback日志系統。因此便決定將其加入到項目框架之中。

二、logback簡介

至于簡介,可自行網上查閱相關文檔文獻,這里不做詳細描述,畢竟不是本文主要目的。只需理解它很好的實現了slf4j,是log4j的再發展即可。

三、具體實施方案(僅供參考)

1、引入依賴包

其實不需要引入任何依賴,Spring Boot 都為我們做好了(不得不感嘆技術的強大與發展之快,不管是好是壞,可以很好的提高開發效率)。

2、配置文件

特別說明:這里logback.xml不是在默認的 src/main/resources 目錄下因此需要在application.properties里配置路徑,由于項目是通過Spring Cloud Config管理的配置文件,但是配置內容都一樣,只需在配置文件中加入以下配置即可:

logging.config=classpath:log/logback.xml

2.1 屬性文件

/src/main/resources/log/logback.properties

說明:定義日志輸出位置、文件大小、保存時間和日志級別。

此文件也可通過Spring Cloud Config管理,這里不做詳細說明了,解題思路可以參看《Servlet+MyBatis項目轉Spring Cloud微服務,多數據源配置修改建議》http://www.49028c.com/kaifa/java/344044.html

logback.path=.logback.maxFileSize=50MBlogback.maxHistory=30logback.level=INFO

2.2 xml文件

/src/main/resources/log/logback.xml

說明:可看文件中注釋,根據需求做相應調整。

<?xml version="1.0" encoding="UTF-8"?><!-- 日志級別從低到高分為TRACE < DEBUG < INFO < WARN < ERROR < FATAL,如果設置為WARN,則低于WARN的信息都不會輸出 --><!-- scan:當此屬性設置為true時,配置文件如果發生改變,將會被重新加載,默認值為true --><!-- scanPeriod:設置監測配置文件是否有修改的時間間隔,如果沒有給出時間單位,默認單位是毫秒。當scan為true時,此屬性生效。默認的時間間隔為1分鐘。 --><!-- debug:當此屬性設置為true時,將打印出logback內部日志信息,實時查看logback運行狀態。默認值為false。 --><configuration scan="true" scanPeriod="10 seconds">  <property resource="log/logback.properties" />  <!--輸出到控制臺-->  <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">    <!--此日志appender是為開發使用,只配置最底級別,控制臺輸出的日志級別是大于或等于此級別的日志信息-->    <filter class="ch.qos.logback.classic.filter.ThresholdFilter">      <level>info</level>    </filter>    <encoder>      <!--格式化輸出:%d表示日期,%thread表示線程名,%-5level:級別從左顯示5個字符寬度,%line:行號,%msg:日志消息,%n是換行符-->      <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level [%logger{50}] - %msg%n</pattern>      <!-- 設置字符集 -->      <charset>UTF-8</charset>    </encoder>  </appender>  <!--輸出到文件-->  <!-- 時間滾動輸出 level為 ${logback.level} 日志 -->  <appender name="STDOUT" class="ch.qos.logback.core.rolling.RollingFileAppender">    <!-- 正在記錄的日志文件的路徑及文件名 -->    <file>${logback.path}/log_${logback.level}.log</file>    <!--日志文件輸出格式-->    <encoder>      <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level [%logger{50}] - %msg%n</pattern>      <charset>UTF-8</charset> <!-- 設置字符集 -->    </encoder>    <!-- 日志記錄器的滾動策略,按日期,按大小記錄 -->    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">      <!-- 日志歸檔 -->      <fileNamePattern>${logback.path}/${logback.level}/log-${logback.level}-%d{yyyy-MM-dd}.%i.log</fileNamePattern>      <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">        <maxFileSize>${logback.maxFileSize}</maxFileSize>      </timeBasedFileNamingAndTriggeringPolicy>      <!--日志文件保留天數-->      <maxHistory>${logback.maxHistory}</maxHistory>    </rollingPolicy>    <!-- 此日志文件只記錄${logback.level}級別的 -->    <filter class="ch.qos.logback.classic.filter.LevelFilter">      <level>${logback.level}</level>      <onMatch>ACCEPT</onMatch>      <onMismatch>DENY</onMismatch>    </filter>  </appender>  <!--    <logger>用來設置某一個包或者具體的某一個類的日志打印級別、    以及指定<appender>。<logger>僅有一個name屬性,    一個可選的level和一個可選的addtivity屬性。    name:用來指定受此logger約束的某一個包或者具體的某一個類。    level:用來設置打印級別,大小寫無關:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,       還有一個特俗值INHERITED或者同義詞NULL,代表強制執行上級的級別。       如果未設置此屬性,那么當前logger將會繼承上級的級別。    addtivity:是否向上級logger傳遞打印信息。默認是true。  -->  <!--<logger name="org.springframework.web" level="info"/>  <logger name="org.springframework.scheduling.annotation.ScheduledAnnotationBeanPostProcessor" level="INFO"/>-->  <!--    root節點是必選節點,用來指定最基礎的日志輸出級別,只有一個level屬性    level:用來設置打印級別,大小寫無關:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,    不能設置為INHERITED或者同義詞NULL。默認是DEBUG    可以包含零個或多個元素,標識這個appender將會添加到這個logger。  -->  <root level="${logback.level}">    <appender-ref ref="CONSOLE" />    <appender-ref ref="STDOUT" />  </root>  <!--開發環境:打印控制臺-->  <!-- <springProfile name="dev">     <logger name="team.biteeny" level="debug"/>   </springProfile>-->  <!--生產環境:輸出到文件-->  <!--<springProfile name="pro">-->  <!--<root level="info">-->  <!--<appender-ref ref="CONSOLE" />-->  <!--<appender-ref ref="DEBUG_FILE" />-->  <!--<appender-ref ref="INFO_FILE" />-->  <!--<appender-ref ref="ERROR_FILE" />-->  <!--<appender-ref ref="WARN_FILE" />-->  <!--</root>-->  <!--</springProfile>--></configuration>

通過以上步驟即可完成logback日志系統的簡單集成,可以做到分時分文件大小以及備份保留時間等日志的輸出管理。

如果想需要調試輸出一些日志信息,只需在相應的類中加入類代碼即可:

private static final Logger log = LoggerFactory.getLogger(ClassName.class);// 需要輸出的日志位置log.info("日志信息");log.error("日志信息");……

四、小結

以上只是對日志系統的簡單應用,這其中的妙處可能還沒有完全體會,把實施過程記錄于此,希望拋磚引玉為大家提供一條解題思路。

有不到之處請大家前來指正,把技術死磕到底!

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VeVb武林網的支持。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲精品日韩久久久| 啪一啪鲁一鲁2019在线视频| 日韩av不卡电影| 在线丨暗呦小u女国产精品| 日韩av在线一区二区| 国产精欧美一区二区三区| 欧美疯狂做受xxxx高潮| 亚洲人成电影在线播放| 国产一区二区三区在线观看视频| 国产精品久久77777| 国产欧美精品久久久| 国产欧美精品一区二区三区介绍| 91精品久久久久久久久久| 一区二区成人精品| 亚洲sss综合天堂久久| 欧美激情一区二区三级高清视频| 日韩乱码在线视频| 久久精品夜夜夜夜夜久久| 亚洲欧美国产va在线影院| 久久久精品亚洲| 中文字幕一区电影| 91精品免费久久久久久久久| www.亚洲一区| 好吊成人免视频| 欧美丰满少妇xxxx| 亚洲欧美日韩区| 成人网页在线免费观看| 国产精品av网站| 日韩在线观看免费| 日韩欧美在线视频日韩欧美在线视频| 55夜色66夜色国产精品视频| 精品国偷自产在线视频99| 亚洲欧美成人一区二区在线电影| 国产精品极品尤物在线观看| 国内精品久久影院| 亚洲人成在线电影| 国产一区二区免费| 日韩美女免费观看| 国产精品99久久久久久久久久久久| 最近中文字幕mv在线一区二区三区四区| 欧洲s码亚洲m码精品一区| 亚洲国产精品yw在线观看| 日本中文字幕成人| 色综合老司机第九色激情| 亚洲欧美制服第一页| 久久夜色撩人精品| 亚洲欧美日韩国产中文专区| 欧美激情网站在线观看| 日韩在线观看免费全集电视剧网站| 欧美成人激情在线| 国产一区二区三区高清在线观看| 欧美亚州一区二区三区| 日韩欧美中文在线| 91久久久久久国产精品| 亚洲日本中文字幕| 日韩精品一区二区视频| 全亚洲最色的网站在线观看| 中文字幕不卡在线视频极品| 欧美日韩午夜剧场| 精品久久久久久国产91| 在线免费看av不卡| 国产高清在线不卡| 亚洲一区二区三区视频| 久久久成人精品视频| 亚洲人在线视频| 欧美性生活大片免费观看网址| 精品久久久久人成| 一区二区欧美在线| 日韩免费在线电影| 国产精品美女久久久久av超清| 久久久www成人免费精品| 青青草原一区二区| 亚洲欧美另类国产| 日韩国产精品亚洲а∨天堂免| 欧美极品少妇全裸体| 欧美高跟鞋交xxxxhd| 91社影院在线观看| 日本一本a高清免费不卡| 亚洲精品少妇网址| 亚洲毛片在线观看.| 欧美黑人巨大xxx极品| 91精品久久久久久久久不口人| 国产精品色婷婷视频| 91黑丝在线观看| 欧美成人午夜剧场免费观看| 亚洲天堂第一页| 欧洲亚洲免费视频| 亚洲高清免费观看高清完整版| 亚洲国产欧美日韩精品| 亚洲第一网中文字幕| 久久久在线免费观看| 久久视频这里只有精品| 国内精品国产三级国产在线专| 国产精品久久久久99| 91精品在线看| 在线播放日韩欧美| 欧美日韩久久久久| 欧美一区二三区| 亚洲а∨天堂久久精品喷水| 亚洲欧洲国产一区| 在线成人免费网站| 国产精品久久久久久av下载红粉| 日韩av综合中文字幕| 日韩在线观看你懂的| 亚洲免费中文字幕| 精品一区二区三区电影| 日韩国产精品一区| 国产精品一区二区久久国产| 欧美亚洲成人网| 国产精品自产拍在线观| 日韩av一区在线观看| 国产精品一二区| 亲子乱一区二区三区电影| 精品偷拍一区二区三区在线看| 91影院在线免费观看视频| 国产亚洲免费的视频看| 亚洲成人在线网| 亚洲一区二区三区乱码aⅴ| 国产精品va在线播放我和闺蜜| 91色琪琪电影亚洲精品久久| 8x海外华人永久免费日韩内陆视频| 亚洲精品国产美女| 国产精品视频免费观看www| 国产不卡在线观看| 欧美高清电影在线看| 亚洲精品美女久久久久| 少妇激情综合网| 成人免费在线网址| 日韩一级黄色av| 操人视频在线观看欧美| 日韩免费av一区二区| 热re99久久精品国产66热| 97国产精品视频人人做人人爱| 国模精品一区二区三区色天香| 午夜精品久久久久久99热软件| 日韩精品一区二区视频| 欧美乱大交xxxxx另类电影| 欧美激情精品久久久久久久变态| 姬川优奈aav一区二区| 日韩av大片在线| 欧美性猛交xxxx免费看漫画| 欧洲午夜精品久久久| 疯狂蹂躏欧美一区二区精品| 欧美激情视频三区| 亚洲国语精品自产拍在线观看| 国产国语刺激对白av不卡| 日韩电影在线观看永久视频免费网站| 欧美www在线| 久久影视电视剧凤归四时歌| 国产91在线高潮白浆在线观看| 欧美激情视频一区| 亚洲国产天堂久久综合网| 欧美综合国产精品久久丁香| 精品呦交小u女在线| 欧美激情网友自拍| 91久久精品在线| 亚洲精品97久久| 国产精品久久婷婷六月丁香| 久久精品一偷一偷国产| 欧美激情亚洲精品| 亚洲视频在线免费看| 国产精品免费久久久久影院| 亚洲精品456在线播放狼人| 91日本在线观看|