Logback是由log4j創(chuàng)始人設(shè)計(jì)的又一個(gè)開(kāi)源日志組件。logback當(dāng)前分成三個(gè)模塊:logback-core,logback- classic和logback-access。logback-core是其它兩個(gè)模塊的基礎(chǔ)模塊。logback-classic是log4j的一個(gè) 改良版本。此外logback-classic完整實(shí)現(xiàn)SLF4J API使你可以很方便地更換成其它日志系統(tǒng)如log4j或JDK14 Logging。logback-access訪問(wèn)模塊與Servlet容器集成提供通過(guò)Http來(lái)訪問(wèn)日志的功能。 --轉(zhuǎn)自百度百科
Logback官方網(wǎng)址為:https://logback.qos.ch/
由于Logback比log4j和SLF4J擁有眾多優(yōu)點(diǎn),如性能(據(jù)說(shuō)有時(shí)達(dá)到10倍以上),并且支持自動(dòng)加載配置文件,自動(dòng)刪除舊的日志文件,以及同一個(gè)logback配置文件同時(shí)適應(yīng)開(kāi)發(fā),測(cè)試,生產(chǎn)等。因此Logback官方強(qiáng)烈建議開(kāi)發(fā)人員從log4j轉(zhuǎn)到使用Logback。
<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"> <!--控制臺(tái)輸出日志信息--> <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級(jí)別的日志到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級(jí)別的日志到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的項(xiàng)目目錄結(jié)構(gòu):
%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%20debug.log的內(nèi)容:
2017-02-08 14:41:10 [LogBackTest:13] - info log error.log的內(nèi)容:2017-02-08 14:41:10 [LogBackTest:14] - error log info.log的內(nèi)容:2017-02-08 14:41:10 [LogBackTest:13] - info log看,簡(jiǎn)單吧!
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注