亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Spring boot使用logback實(shí)現(xiàn)日志管理過(guò)程詳解

瀏覽:5日期:2023-09-02 14:36:45

Springboot默認(rèn)集成的就是logback,logback相對(duì)來(lái)說(shuō)是優(yōu)秀于log4j的,log4j2也是參考了logback的設(shè)計(jì)。本篇就是來(lái)看看如何使用logback。

1.導(dǎo)入jar包

<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </dependency>

2.創(chuàng)建logback-spring.xml配置文件

<?xml version='1.0' encoding='UTF-8'?><!-- scan 配置文件如果發(fā)生改變,將會(huì)被重新加載 scanPeriod 檢測(cè)間隔時(shí)間--><configuration scan='true' scanPeriod='60 seconds' debug='false'> <contextName>zlyPay-log</contextName> <!-- info 地址 --> <property name='log.path' value='D:log' /> <property name='log.file' value='D:loglogback.log' /> <!-- errr,錯(cuò)誤路徑 --> <property name='log.path.error' value='D:logerror' /> <property name='log.file.error' value='D:logerrorlogback-error.log' /> <!--警告路徑 --> <property name='log.path.warn' value='D:logwarn' /> <property name='log.file.warn' value='D:logwarnlogback-error.log' /> <include resource='org/springframework/boot/logging/logback/base.xml'/> <!-- 普通日志 --> <appender name='INFO_FILE' class='ch.qos.logback.core.rolling.RollingFileAppender'> <file>${log.file}</file> <!-- 循環(huán)政策:基于時(shí)間創(chuàng)建日志文件 --> <rollingPolicy class='ch.qos.logback.core.rolling.TimeBasedRollingPolicy'> <!-- 日志命名:單個(gè)文件大于128MB 按照時(shí)間+自增i 生成log文件 --> <fileNamePattern>${log.path}zlyPay-log-info-%d{yyyy-MM-dd}.%i.log</fileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class='ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP'><maxFileSize>512MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> <!-- 最大保存時(shí)間:30天--> <maxHistory>30</maxHistory> </rollingPolicy> <append>true</append> <encoder class='ch.qos.logback.classic.encoder.PatternLayoutEncoder'> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L - %msg%n</pattern> <charset>utf-8</charset> </encoder> <!-- 顯示所有的日志記錄 <filter class='ch.qos.logback.classic.filter.LevelFilter'> <level>info</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> --> </appender> <!-- 錯(cuò)誤日志 --> <appender name='ERROR_FILE' class='ch.qos.logback.core.rolling.RollingFileAppender'> <file>${log.file.error}</file> <!-- 循環(huán)政策:基于時(shí)間創(chuàng)建日志文件 --> <rollingPolicy class='ch.qos.logback.core.rolling.TimeBasedRollingPolicy'> <!-- 日志命名:單個(gè)文件大于2MB 按照時(shí)間+自增i 生成log文件 --> <fileNamePattern>${log.path.error}zlyPay-log-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class='ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP'><maxFileSize>128MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> <!-- 最大保存時(shí)間:180天--> <maxHistory>180</maxHistory> </rollingPolicy> <append>true</append> <!-- 日志格式 --> <encoder class='ch.qos.logback.classic.encoder.PatternLayoutEncoder'> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L - %msg%n</pattern> <charset>utf-8</charset> </encoder> <!-- 日志級(jí)別過(guò)濾器 --> <filter class='ch.qos.logback.classic.filter.LevelFilter'> <!-- 過(guò)濾的級(jí)別 --> <level>ERROR</level> <!-- 匹配時(shí)的操作:接收(記錄) --> <onMatch>ACCEPT</onMatch> <!-- 不匹配時(shí)的操作:拒絕(不記錄) --> <onMismatch>DENY</onMismatch> </filter> </appender> <!-- 控制臺(tái) --> <appender name='STDOUT' class='ch.qos.logback.core.ConsoleAppender'> <!-- 日志格式 --> <encoder> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L - %msg%n</pattern> <charset>utf-8</charset> </encoder> <!--此日志appender是為開(kāi)發(fā)使用,只配置最底級(jí)別,控制臺(tái)輸出的日志級(jí)別是大于或等于此級(jí)別的日志信息--> <filter class='ch.qos.logback.classic.filter.ThresholdFilter'> <!-- 只有這個(gè)日志權(quán)限才能看,sql語(yǔ)句 --> <level>DEBUG</level> </filter> </appender> <!-- 警告信息 --><appender name='STDOUT' class='ch.qos.logback.core.rolling.RollingFileAppender'> <!-- 循環(huán)政策:基于時(shí)間創(chuàng)建日志文件 --> <file>${log.file.warn}</file> <rollingPolicy class='ch.qos.logback.core.rolling.TimeBasedRollingPolicy'> <!-- 日志命名:單個(gè)文件大于2MB 按照時(shí)間+自增i 生成log文件 --> <fileNamePattern>${log.path.warn}zlyPay-log-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class='ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP'><maxFileSize>128MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> <!-- 最大保存時(shí)間:180天--> <maxHistory>180</maxHistory> </rollingPolicy> <append>true</append> <!-- 日志格式 --> <encoder class='ch.qos.logback.classic.encoder.PatternLayoutEncoder'> <!--<Pattern>${ENCODER_PATTERN}</Pattern>--> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %X{QTRACER} %X{MDCContextId}-%X{MDCSupplyService}-%X{MDCSupplyRetryTime} %-5level %logger{0} - %msg%n</pattern> </encoder> <filter class='ch.qos.logback.classic.filter.LevelFilter'> <level>warn</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter></appender> <!-- 輸出sql日志 --> <logger name='org.jcut.dao' level='DEBUG'></logger> <!-- additivity 避免執(zhí)行2次--> <logger name='com.cltx' level='INFO' additivity='false'> <appender-ref ref='STDOUT'/> <appender-ref ref='INFO_FILE'/> <appender-ref ref='ERROR_FILE'/> </logger> <root level='INFO'> <appender-ref ref='STDOUT' /> <appender-ref ref='INFO_FILE' /> <appender-ref ref='ERROR_FILE' /> </root> </configuration>

3.application.properties文件中加入日志文件路徑

#加載指定的日志配置文件logging.config=classpath:logback-spring.xml#調(diào)試環(huán)境用DEBUG,生產(chǎn)環(huán)境用infologging.level.root=DEBUG

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Spring
相關(guān)文章:
主站蜘蛛池模板: 亚洲狠狠97婷婷综合久久久久 | 亚洲国产色婷婷精品综合在线观看 | 亚洲精品456人成在线 | 一级毛片男女做受 | 欧美成人在线影院 | 一级黄色录像播放 | 中文字幕在线日韩 | 色综合网亚洲精品久久久 | 青青草国产免费国产 | 免费国产一级特黄aa大 | 黄色三级三级三级免费看 | 国产成人综合95精品视频免费 | 黄色小片片 | 韩国日本一级片 | 色爱区综合激月婷婷激情五月 | 爱爱欧美视频 | 伊人色综合久久天天爱 | 亚洲国产精品a一区 | 亚洲精品乱码国产精品乱码 | 麻豆精品永久免费视频 | 日韩欧美一区二区三区免费看 | 国产91精品新入口 | 黄色网址www | 免费观看黄色一级片 | 美国毛片免费一级 | 国产大片免费看 | 亚洲国产精品午夜电影 | 欧美一级片黄色 | 精品欧美一区视频在线观看 | 黄色生活片 | 1024国产手机视频基地 | 欧美成人午夜视频免看 | 国产在线观看午夜不卡 | 综合色吧 | 精品国产999| 午夜精品在线观看 | 国产91臀交在线播放 | 综合网在线 | 中文字幕 视频一区 | 一区二区三区四区在线不卡高清 | 毛片专区|