SpringBoot日志級(jí)別與日志分組詳解
日志級(jí)別
1、級(jí)別內(nèi)容
- 從低到高:
ALL、TRACE、DEBUG、INFO、WARN、ERROR、FATAL、OFF;ALL:打印 所有日志TRACE:追蹤框架詳細(xì)流程日志,一般不使用,記錄運(yùn)行到哪一步了DEBUG:開發(fā)調(diào)試的細(xì)節(jié)日志INFO:關(guān)鍵、感興趣消息日志WARN:警告,但不是錯(cuò)誤信息,如版本過時(shí)等。- 從 ERROR 開始包括 ERROR 再往上(從低到高)就是出現(xiàn)錯(cuò)誤(導(dǎo)致程序運(yùn)行不了)的日志了。
ERROR:業(yè)務(wù)錯(cuò)誤日志FATAL:致命錯(cuò)誤日志OFF:關(guān)閉 所有日志記錄
- 只會(huì)打印指定級(jí)別及以上(從低到高)級(jí)別的日志,驗(yàn)證演示(打印
TRACE到ERROR,這是開發(fā)期間常用的4個(gè)日志類型)如下:- 要使用
log得先導(dǎo)入lombok.extern.slf4j.Slf4j,并在開頭添加@Slf4j(直接添加@Slf4j會(huì)自動(dòng)導(dǎo)入lombok.extern.slf4j.Slf4j)
- 要使用
編寫如下代碼:
package com.atwyb.logging.com.atwyb.logging.controller;
//package自己的cotroller包路徑
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@Slf4j
@RestController
public class HelloController {
@GetMapping("/h")
public String hello(){
log.trace("trace 日志");
log.debug("debug 日志");
log.info("info 日志");
log.warn("warn 日志");
log.error("error 日志");
return "hello";
}
}啟動(dòng)程序,訪問/h后觀察到控制臺(tái),發(fā)現(xiàn)只打印了INFO及以上的日志,因?yàn)?code>SpringBoot 默認(rèn)的日志級(jí)別為INFO,所以不打印TRACE、DEBUG

2、調(diào)整日志級(jí)別
調(diào)整默認(rèn)日志級(jí)別
在SpringBoot中,可以精確調(diào)整某一個(gè)類的級(jí)別。
若不調(diào)整,所有類都會(huì)使用application.propertise中logging.level.root指定的日志級(jí)別,如圖所示。

將logging.level.root調(diào)整為debug后,運(yùn)行訪問/h后,顯示日志為debug,如下圖。

調(diào)整指定類的日志級(jí)別
修改logging.level.*(*為所要修改的包名及路徑)即可,修改為warn,如下圖。

驗(yàn)證,運(yùn)行項(xiàng)目觀察控制臺(tái),發(fā)現(xiàn)指定包的日志只顯示warn及以后的了,其它沒調(diào)整的都是默認(rèn)日志等級(jí)(前面修改為了debug)。

項(xiàng)目開發(fā)過程中,利用日志來測(cè)試的小技巧
在項(xiàng)目開發(fā)測(cè)試過程中,利用常用的log.info,對(duì)參數(shù)進(jìn)行驗(yàn)證。
日志相比于直接在控制臺(tái)輸出,可以用以下格式
log.info("info 日志 參數(shù)A:{} 參數(shù)B:{}",A,B);修改前面的代碼:
package com.atwyb.logging.com.atwyb.logging.controller;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@Slf4j
@RestController
public class HelloController {
@GetMapping("/h")
public String hello(String A,String B){
log.trace("trace 日志");
log.debug("debug 日志");
log.info("info 日志 參數(shù)A:{} 參數(shù)B:{}",A,B);
log.warn("warn 日志");
log.error("error 日志");
return "hello";
}
}啟動(dòng)服務(wù)器后,訪問http://localhost:8080/h?A=1&B=2,傳輸A、B參數(shù)值后,在控制臺(tái)可以看得到info信息中帶有A、B的值。

日志分組
在有多個(gè)包需要指定日志類型時(shí),可以通過分組快速指定。
比如需要指定以下類都為debug
logging.level.com.a=debug logging.level.com.b=debug logging.level.com.c=debug logging.level.com.d=debug
可以用以下形式替代
logging.group.abc=com.a,com.b,com.c,com.d logging.level.abc=debug
SpringBoot 預(yù)定義了兩個(gè)組:web、sql,在可以在application.propertise直接指定。
到此這篇關(guān)于SpringBoot日志級(jí)別與日志分組詳解的文章就介紹到這了,更多相關(guān)SpringBoot日志級(jí)別與日志分組內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring Boot 通過 Mvc 擴(kuò)展方便進(jìn)行貨幣單位轉(zhuǎn)換的代碼詳解
這篇文章主要介紹了Spring Boot 通過 Mvc 擴(kuò)展方便進(jìn)行貨幣單位轉(zhuǎn)換,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12
IntelliJ IDEA中打開拼寫檢查與忽略提示曲線的方法
今天小編就為大家分享一篇關(guān)于IntelliJ IDEA中打開拼寫檢查與忽略提示曲線的方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2018-10-10
Java編程實(shí)現(xiàn)暴力破解WIFI密碼的方法分析
這篇文章主要介紹了Java編程實(shí)現(xiàn)暴力破解WIFI密碼的方法,結(jié)合具體實(shí)例形式分析了java暴力破解WiFi密碼的原理、操作步驟、實(shí)現(xiàn)技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下2018-12-12
Druid(新版starter)在SpringBoot下的使用教程
Druid是Java語言中最好的數(shù)據(jù)庫(kù)連接池,Druid能夠提供強(qiáng)大的監(jiān)控和擴(kuò)展功能,DruidDataSource支持的數(shù)據(jù)庫(kù),這篇文章主要介紹了Druid(新版starter)在SpringBoot下的使用,需要的朋友可以參考下2023-05-05
java模板引擎Thymeleaf和前端vue的區(qū)別及說明
這篇文章主要介紹了java模板引擎Thymeleaf和前端vue的區(qū)別及說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11
Spring實(shí)戰(zhàn)之@Autowire注解用法詳解
這篇文章主要介紹了Spring實(shí)戰(zhàn)之@Autowire注解用法,結(jié)合實(shí)例形式詳細(xì)分析了Spring @Autowire注解具體實(shí)現(xiàn)步驟與相關(guān)使用技巧,需要的朋友可以參考下2019-12-12
使用@Validated 和 BindingResult 遇到的坑及解決
這篇文章主要介紹了使用@Validated 和 BindingResult 遇到的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-10-10
簡(jiǎn)單了解Java synchronized關(guān)鍵字同步
這篇文章主要介紹了簡(jiǎn)單了解Java synchronized關(guān)鍵字同步,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-09-09
Spring?Data?Redis切換底層Jedis和Lettuce實(shí)現(xiàn)源碼解析
這篇文章主要為大家介紹了Spring?Data?Redis切換底層Jedis和Lettuce實(shí)現(xiàn)方法源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11

