/**
*
* logback
* 一、在springboot 架構中,日志使用的slf4j的工廠模式。
* 在新建項目勾選web成為springboot Web項目后,會默認引入logback的日志實現類。此時不需要引入其他日志依賴,就可以使用logback日志記錄
*
* 主要jar包:
* Logback-classic-xxx.jar、logback-core.xxx.jar、slf4j-api.jar、spring-boot.jar
*
* 二、在spring-boot.jar包中存在默認的配置xml,base.xml。這個文件里指定默認日志輸出info級別,所以在未自定義日志配置時,日志默認打出info以以上級別日志
*
* <included>
* <include resource="org/springframework/boot/logging/logback/defaults.xml" />
* <property name="LOG_FILE" value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/spring.log}"/>
* <include resource="org/springframework/boot/logging/logback/console-appender.xml" />
* <include resource="org/springframework/boot/logging/logback/file-appender.xml" />
* <root level="INFO">
* <appender-ref ref="CONSOLE" />
* <appender-ref ref="FILE" />
* </root>
* </included>
*
*
* 三、如果想自定義日志輸出規則,只需添加 logback.xml或 logback.groovy進行配置。 Logback-classic-1.2.3.jar會找尋這兩個配置讀取。
* logback-test.xml 也是Logback-classic-1.2.3.jar包中讀取的文件,用於測試目錄下使用
* test
* resources
* logback-test.xml
* 項目正式使用logback.xml或 logback.groovy
* main
* resources
* logback.xml
*
* public static final String GROOVY_AUTOCONFIG_FILE = "logback.groovy";
* public static final String AUTOCONFIG_FILE = "logback.xml";
* public static final String TEST_AUTOCONFIG_FILE = "logback-test.xml";
* public static final String CONFIG_FILE_PROPERTY = "logback.configurationFile";
*
*四、Maven直接引入
* <dependency>
* <groupId> ch.qos.logback </ groupId>
* <artifactId> logback-classic </ artifactId>
* <version> 1.0.13 </ version>
* </ dependency>
*
*
* 日志級別:trace < debug < info < warn < error
*
*/
--------------------------代碼一、為自定義配置------------------------------
@RequestMapping("/logback")
@RestController
public class LogbackController {
private final static Logger logger = LoggerFactory.getLogger(LogbackController.class);
@RequestMapping("/test1")
@ResponseBody
public String testLog(){
logger.error("error 日志");
logger.info("info 日志");
logger.debug("debug 日志");
logger.trace("trace 日志");
logger.warn("warn 日志");
return "test1 請求成功";
}
}
輸出結果:
2019-12-27 09:03:13.867 ERROR 15596 --- [nio-9201-exec-2] n.j.r.c.logback.LogbackController : error 日志
2019-12-27 09:03:13.867 INFO 15596 --- [nio-9201-exec-2] n.j.r.c.logback.LogbackController : info 日志
2019-12-27 09:03:13.867 WARN 15596 --- [nio-9201-exec-2] n.j.r.c.logback.LogbackController : warn 日志
結果分析:只打印了error、info、warn日志。說明讀取了默認的base.xml配置。過濾掉了trace、debug兩種