国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Logback 入門詳解

2019-11-10 19:52:57
字體:
來源:轉載
供稿:網友

    Logback是由log4j創始人設計的又一個開源日志組件。logback當前分成三個模塊:logback-core,logback- classic和logback-access。logback-core是其它兩個模塊的基礎模塊。logback-classic是log4j的一個 改良版本。此外logback-classic完整實現SLF4J API使你可以很方便地更換成其它日志系統如log4j或JDK14 Logging。logback-access訪問模塊與Servlet容器集成提供通過Http來訪問日志的功能。         --轉自百度百科

     Logback官方網址為:https://logback.qos.ch/ 

     由于Logback比log4j和SLF4J擁有眾多優點,如性能(據說有時達到10倍以上),并且支持自動加載配置文件,自動刪除舊的日志文件,以及同一個logback配置文件同時適應開發,測試,生產等。因此Logback官方強烈建議開發人員從log4j轉到使用Logback。

    一、實戰

      1. logback的maven依賴:   

        <dependency>            <groupId>ch.qos.logback</groupId>            <artifactId>logback-core</artifactId>            <version>1.1.7</version>        </dependency>        <!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-classic -->        <dependency>            <groupId>ch.qos.logback</groupId>            <artifactId>logback-classic</artifactId>            <version>1.1.7</version>        </dependency>        <!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-access -->        <dependency>            <groupId>ch.qos.logback</groupId>            <artifactId>logback-access</artifactId>            <version>1.1.7</version>        </dependency>

     2. logback.xml文件配置:

<?xml version="1.0" encoding="UTF-8"?><configuration debug="true" scan="true" scanPeriod="30 seconds">    <!--控制臺輸出日志信息-->    <appender name="CONSOLE-LOG" class="ch.qos.logback.core.ConsoleAppender">        <!-- encoders are  by default assigned the type             ch.qos.logback.classic.encoder.PatternLayoutEncoder -->        <encoder>            <pattern>%d{yyyy-MM-dd HH:mm:ss} [%level] - %m%n</pattern>        </encoder>    </appender>    <!-- 輸出error級別的日志到error.log文件中 -->    <appender name="ERROR-LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">        <file>logs/error.log</file>        <encoder>            <pattern>%d{yyyy-MM-dd HH:mm:ss} [%class:%line] - %m%n</pattern>        </encoder>        <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">            <!-- daily rollover -->            <fileNamePattern>error.%d{yyyy-MM-dd}.log.zip</fileNamePattern>            <!-- keep 30 days' worth of history -->            <maxHistory>30</maxHistory>        </rollingPolicy>    </appender>    <!-- 輸出info級別的日志到error.log文件中 -->    <appender name="INFO-LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">        <file>logs/info.log</file>        <encoder>            <pattern>%d{yyyy-MM-dd HH:mm:ss} [%class:%line] - %m%n</pattern>        </encoder>        <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.FixedWindowRollingPolicy">            <fileNamePattern>info.%i.log</fileNamePattern>            <minIndex>1</minIndex>            <maxIndex>3</maxIndex>        </rollingPolicy>        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">            <maxFileSize>5MB</maxFileSize>        </triggeringPolicy>    </appender>    <appender name="DEBUG-LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">        <file>logs/debug.log</file>        <encoder>            <pattern>%d{yyyy-MM-dd HH:mm:ss} [%class:%line] - %m%n</pattern>        </encoder>        <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.FixedWindowRollingPolicy">            <fileNamePattern>debug.%i.log</fileNamePattern>            <minIndex>1</minIndex>            <maxIndex>3</maxIndex>        </rollingPolicy>        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">            <maxFileSize>5MB</maxFileSize>        </triggeringPolicy>    </appender>    <root level="debug">        <appender-ref ref="CONSOLE-LOG" />        <appender-ref ref="ERROR-LOG" />        <appender-ref ref="INFO-LOG" />        <appender-ref ref="DEBUG-LOG" />    </root></configuration>      logback的項目目錄結構:

                      

 %20 3.LogBackTest.java %20 %20 %20 

import%20org.junit.Test;import%20org.slf4j.Logger;import%20org.slf4j.LoggerFactory;public%20class%20LogBackTest%20{%20%20%20%20       

     debug.log的內容:      

2017-02-08 14:41:10 [LogBackTest:13] - info log     error.log的內容:     

2017-02-08 14:41:10 [LogBackTest:14] - error log     info.log的內容:

2017-02-08 14:41:10 [LogBackTest:13] - info log

看,簡單吧!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 板桥市| 广平县| 改则县| 沙坪坝区| 肥城市| 柯坪县| 隆回县| 伊吾县| 四川省| 新竹县| 翼城县| 贵定县| 绥棱县| 荆州市| 株洲县| 溧水县| 张家口市| 咸宁市| 康平县| 清徐县| 墨玉县| 苏尼特右旗| 宁武县| 达州市| 莱阳市| 富锦市| 吉隆县| 清原| 灵寿县| 阳东县| 马龙县| 峨眉山市| 贞丰县| 城口县| 句容市| 大宁县| 龙门县| 临清市| 读书| 海城市| 青浦区|