SpringBoot1.5.X版本引入的一個新的控制端點:/loggers,該端點將爲咱們提供動態修改Spring Boot應用日誌級別的強大功能。該功能的使用很是簡單,它依然延續了Spring Boot自動化配置的實現,因此只須要在引入了spring-boot-starter-actuator依賴的條件下就會自動開啓該端點的功能。java
下面介紹一下如何動態改變SpringBoot應用的日誌級別:web
使用工具爲IDEA,SpringBoot版本爲1.5.9.spring
先經過IDEA中Spring Initializr的建立一個名稱爲springboot-changeloglevel的項目,並添加web、actuator支持。json
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
在application.properties增長如下配置信息安全
#關閉安全認證校驗 management.security.enabled=false
增長一個控制層類,用來輸入不一樣級別日誌,用於測試springboot
package org.lvgang.springbootchangeloglevel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class TestController { protected static Logger logger=LoggerFactory.getLogger(TestController.class); @GetMapping("/test") public String hello(){ logger.debug("debug"); //輸出debug級日誌 logger.info("info"); //輸出info級日誌 logger.warn("warm"); //輸出warm級日誌 logger.error("error"); //輸出error級日誌 return ""; } }
完成以上以後,經過SpringBoot啓動文件啓動項目,會在控制檯發現發了幾個URL映射,這就是日誌相關的監控管理URL。app
(get)http://localhost:8080/loggers 經過此URL能夠查看項目全部包的日誌級別spring-boot
(get)http://localhost:8080/loggers/org.lvgang 經過此URL能夠查看org.lvgang包的日誌級別工具
(post)http://localhost:8080/loggers/org.lvgang 經過此URL能夠修改org.lvgang包的日誌級別post
因須要發送post請求,全部經過Postman工具訪問URL。
訪問Url:(get)http://localhost:8080/loggers 或http://localhost:8080/loggers/org.lvgang 查看一下org.lvgang包的日誌級別,能夠查看出org.lvgang未配置日誌級別。默認的日誌級別爲INFO
訪問Url:(get)http://localhost:8080/test,查看日誌輸出測試類,發現後輸出了info\warm\error三個級別的日誌dubug級別的未輸出,緣由是默認的日誌級別爲INFO
訪問url:(post)http://localhost:8080/loggers/org.lvgang,修改org.lvgang日誌輸出別爲debug。此請假必須增長請boby體,而且類型爲json,boby內容必須與下圖一致。
訪問Url:(get)http://localhost:8080/loggers 或http://localhost:8080/loggers/org.lvgang 查看一下org.lvgang包的日誌級別,能夠查看日誌級別爲dubug
訪問Url:(get)http://localhost:8080/test,查看日誌輸出測試類,發現後輸出了dubug\info\warm\error四個級別的日誌都輸出,表示日誌級別修改爲功了!