SpringBoot詳細(xì)講解日志文件
1 日志的功能是什么?
如果程序報(bào)錯了, 卻不能從控制臺查看日志, 那么就不知道錯誤的原因了.
日志的功能 :
- 快速的排查和定位問題
- 記錄用戶登錄的日志
- 記錄系統(tǒng)的操作日志
- 記錄程序的執(zhí)行時間
2 如何自定義日志打印
自定義日志的打印步驟 :
第一步: 在程序當(dāng)中獲取日志對象
第二步: 調(diào)用日志對象的打印方法, 將信息打印出來
2.1 在程序中獲取日志對象
獲取日志對象需要使用日志工廠 LoggerFactory
這里的 Logger 對象屬于 org.slf4j 包下.
// 1. 得到日志對象
private static final Logger logger = LoggerFactory.getLogger(UserController.class);

SpringBoot中內(nèi)置了 日志框架slf4j, 可以直接在程序中調(diào)用slf4j來輸出日志
2.2 調(diào)用日志對象打印日志
日志對象的打印方法有很多, 目前展示這一個
// 2. 使用日志對象打印日志
logger.info("日志級別:info");
2.3 查看日志打印的結(jié)果

3 日志的級別
有了日志的級別, 開發(fā)者就可以設(shè)置日志級別, 從而得到對自己有用的日志信息, 大大節(jié)省了分類的成本.
3.1 日志級別的分類
日志的級別分為:
trace:普通微量的日志信息debug: 調(diào)式的時候的日志信息info: 普通的日志信息 (默認(rèn)日志級別)warn: 警告的日志信息error: 錯誤的日志信息fatal: 致命錯誤,最高日志級別
日志級別的順序 :

3.2 日志級別的設(shè)置
在配置文件中配置日志級別
.properties 中的格式
logging.level.root=error
.yml 中的格式
logging:
level:
root: info
輸出

如果設(shè)置的是info級別.那么級別低于info的就不輸出了.
日志輸出級別, 默認(rèn)是info
4 日志持久化
上面演示的日志, 都是輸出在控制臺的, 如果在生產(chǎn)環(huán)境下, 想要保存這些日志, 方便日后查看日志. 這里的把日志保存下來, 就叫做持久化
注意: 默認(rèn)情況下SpringBoot會有一個最大的日志大小限制, 如果日志的文件大于默認(rèn)的最大日志大小, 那么SpringBoot會重新
配置日志文件的保存路徑
logging:
file:
path: D:/logs
配置日志文件的文件名
logging:
file:
name: D:/logs/spring.log
運(yùn)行后查看文件

5 更簡單的日志輸出
如何在SpringBoot中快速添加依賴?
下載插件 EditStarters

5.1 添加 lombok 依賴
在 pom.xml 里右擊 選則 Generate



記得刷新以下maven
5.2 輸出日志
首先添加 @Slf4j 注解
使用log對象打印日志, 例如 log.error()
@Controller
@Slf4j
public class UsersController {
@RequestMapping("/log")
@ResponseBody
public String printLog() {
log.error("error");
return "Log";
}
}
5.3 lombok 更多的注解
普通注解
| 注解 | 作用 |
|---|---|
| @Getter | ?動添加 getter ?法 |
| @Setter | ?動添加 setter ?法 |
| @ToString | ?動添加 toString ?法 |
| @EqualsAndHashCode | ?動添加 equals 和 hashCode ?法 |
| @NoArgsConstructor | ?動添加?參構(gòu)造?法 |
| @AllArgsConstructor | ?動添加全屬性構(gòu)造?法,順序按照屬性的定義順序 |
| @NonNull | 屬性不能為 null |
| @RequiredArgsConstructor | ?動添加必需屬性的構(gòu)造?法,final + @NonNull 的屬性為必需 |
組合注解
| 注解 | 作用 |
|---|---|
| @Data | @Getter + @Setter + @ToString +@EqualsAndHashCode +@RequiredArgsConstructor +@NoArgsConstructor |
日志注解
| 注解 | 作用 |
|---|---|
| @Slf4j | 添加?個名為 log 的?志,使? slf4 |
到此這篇關(guān)于SpringBoot詳細(xì)講解日志文件的文章就介紹到這了,更多相關(guān)SpringBoot日志文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
springboot @validated List校驗(yàn)失效問題
這篇文章主要介紹了springboot @validated List校驗(yàn)失效問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07
MybatisPlus實(shí)現(xiàn)真正批量插入的詳細(xì)步驟
Spring?Boot?Admin?監(jiān)控指標(biāo)接入Grafana可視化的實(shí)例詳解

