Logback介紹:spring
Logback是由log4j創始人設計的另外一個開源日誌組件,官方網站: http://logback.qos.ch。它當前分爲下面下個模塊:
logback-core:其它兩個模塊的基礎模塊
logback-classic:它是log4j的一個改良版本,同時它完整實現了slf4j API使你能夠很方便地更換成其它日誌系統如log4j或JDK14 Logging
logback-access:訪問模塊與Servlet容器集成提供經過Http來訪問日誌的功能app
不能單獨使用,推薦配合日誌框架SLF4J來使用框架
首先新建 logback.xml ,官方推薦命名爲 logback-spring.xml網站
<?xml version="1.0" encoding="UTF-8" ?> <configuration> <!-- 控制檯打印 --> <appender name="consoleApp" class="ch.qos.logback.core.ConsoleAppender"> <layout class="ch.qos.logback.classic.PatternLayout"> <pattern> %date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg%n </pattern> </layout> </appender> <!--輸出 INFO 級別及以上日誌--> <appender name="fileInfoApp" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!--過濾 error 級別的日誌 --> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>ERROR</level> <onMatch>DENY</onMatch> <onMismatch>ACCEPT</onMismatch> </filter> <encoder> <pattern> %date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg%n </pattern> </encoder> <!-- 滾動策略 --> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 路徑 --> <fileNamePattern>app_log/log/app.info.%d.log</fileNamePattern> <!-- 控制保留的歸檔文件的最大數量,超出數量就刪除舊文件,當前滾動策略是天天,保存30天日誌文件 --> <MaxHistory>10</MaxHistory> </rollingPolicy> </appender> <!--輸出 ERROR 級別日誌--> <appender name="fileErrorApp" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>ERROR</level> </filter> <encoder> <pattern> %date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg%n </pattern> </encoder> <!-- 設置滾動策略 --> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 路徑 --> <fileNamePattern>app_log/log/app.err.%d.log</fileNamePattern> <!-- 控制保留的歸檔文件的最大數量,超出數量就刪除舊文件,當前滾動策略是天天,保存30天日誌文件 --> <MaxHistory>30</MaxHistory> </rollingPolicy> </appender> <!--輸出日誌級別爲 INFO 及以上--> <root level="INFO"> <appender-ref ref="consoleApp"/> <appender-ref ref="fileInfoApp"/> <appender-ref ref="fileErrorApp"/> </root> </configuration>
接着就能夠在項目中使用日誌了this
Logger logger= LoggerFactory.getLogger(this.getClass()); @RequestMapping("/test5") public String test5() { logger.debug(" debug 信息"); logger.info(" info 信息"); logger.warn(" warn 信息"); logger.error(" error 信息"); return "ok"; }
注意導入包爲debug
org.slf4j.Logger
org.slf4j.LoggerFactory
打開日誌文件,會看到項目打印的日誌設計