SpringBoot日志配置操作全面介紹
日記基礎(chǔ)操作
編程期調(diào)試代碼
運(yùn)營期記錄信息
記錄日常運(yùn)營重要信息(峰值流量,平均響應(yīng)時長...)
記錄應(yīng)用報(bào)錯信息(錯誤堆棧)
記錄運(yùn)維過程數(shù)據(jù)(擴(kuò)容、報(bào)警..)
創(chuàng)建的springboot工程中
package com.comtroller;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/logs")
public class LogController {
//創(chuàng)建記錄日志的對象
private static final Logger log= LoggerFactory.getLogger(LogController.class);
@GetMapping
public String test(){
log.info("info..");
log.debug("debug..");
log.warn("warn..");
log.error("error..");
return "Logging ...";
}運(yùn)行結(jié)果


可以看出來debug級別的日志默認(rèn)是關(guān)閉的
要開啟debug只需要在配置文件中加入
//開啟debug模式,輸出調(diào)試信息,常用于檢查系統(tǒng)運(yùn)行狀態(tài)
debug: true
一般這樣設(shè)置
設(shè)置日志級別,root表示根節(jié)點(diǎn),即整體應(yīng)用日志級別
logging:
level:
root: debug

debug加載的信息量非常的多
logging:
level:
root: warn
改成warn級別,只要警告信息和報(bào)錯信息

設(shè)置包的級別
logging:
level:
# 其余的日志為info級別
root: info
# 設(shè)置com包下的為debug
com: debug

設(shè)置日志分組
設(shè)置日志組,控制指定包對應(yīng)的日志輸出級別,也可以直接控指定包對應(yīng)的日志輸出級別
logging:
group:
# 自定義組名,設(shè)置當(dāng)前組中所包含的包
kc_g1: com
# 設(shè)置日志級別
level:
root: warn
kc_g1: debug

可以使用繼承的方式,將配置的抽取出來,放到一個類中,這就不用書寫
將這個放到一個類中所用的類去繼承
//創(chuàng)建記錄日志的對象
private static final Logger log= LoggerFactory.getLogger(LogController.class);使用lombok中@Slf4j簡化日志輸出
pom.xml中引入lombok
<!-- lombok簡化日志輸出-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
//lombok簡化日志
@Slf4j
@RestController
@RequestMapping("/logs")
public class LogController {
@GetMapping
public String test(){
log.info("info..");
log.debug("debug..");
log.warn("warn..");
log.error("error..");
return "Logging ...";
}
}運(yùn)行之后

日志輸出格式控制

PID:進(jìn)程id,用于表明當(dāng)前操作所處的進(jìn)程,當(dāng)多服務(wù)同時記錄日志時,這個值可以用來協(xié)助調(diào)試程序
所屬類/接口:當(dāng)前顯示信息為SpringBoot重寫后的信息,名稱過長是,簡化包名書寫為首字母,甚至直接刪除。
設(shè)置日志輸出格式
logging:
pattern:
console: "%d %clr(%p) --- [%16t] %clr(%-40.40c){red} : %m %n"
%d:日期
%m:消息
%n:換行
%p: 進(jìn)程號
%clr:設(shè)置顏色
%t:進(jìn)程名
-40:左對齊40位

logging
pattern:
console: "%d - %m%n"

文件記錄日志
設(shè)置日志文件
logging:
file:
name: server.log
一啟動服務(wù)器就會生成一個你指定名字的文件,但是服務(wù)器沒關(guān)是沒有內(nèi)容的,還在緩沖區(qū)里

關(guān)閉服務(wù)器得到

日志文件詳細(xì)配置
logging:
file:
name: server.log
logback:
rollingpolicy:
max-file-size: 2KB
file-name-pattern: server.%d{yyyy-MM-dd}.%i.log
自動生成對應(yīng)的

注:SpringBoot2.4之后才能使用,否則無效果
到此這篇關(guān)于SpringBoot日志配置操作全面介紹的文章就介紹到這了,更多相關(guān)SpringBoot日志配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于idea把maven工程轉(zhuǎn)換為web項(xiàng)目
這篇文章主要介紹了基于idea把maven工程轉(zhuǎn)換為web項(xiàng)目,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-04-04
Java中的排序與內(nèi)部比較器Compareable解析
這篇文章主要介紹了Java中的排序與內(nèi)部比較器Compareable解析,一般沒有特殊要求時,直接調(diào)用(底層默認(rèn)的升序排列)就可以得到想要的結(jié)果,所謂的 sort 方法排序底層都是基于這兩種排序,故如果需要設(shè)計(jì)成所想要的排序就需要了解底層排序原理,需要的朋友可以參考下2023-11-11
Java中如何使用正則表達(dá)式提取各種類型括號中的內(nèi)容
最近在工作中遇到一個問題,就是需要一個字符串中每一個中括號里的內(nèi)容,下面這篇文章主要給大家介紹了關(guān)于Java中如何使用正則表達(dá)式提取各種類型括號中的內(nèi)容,需要的朋友可以參考下2023-06-06
springboot之端口設(shè)置和contextpath的配置方式
這篇文章主要介紹了springboot之端口設(shè)置和contextpath的配置方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-01-01
解析SpringBoot?搭建基于?MinIO?的高性能存儲服務(wù)的問題
Minio是Apache?License?v2.0下發(fā)布的對象存儲服務(wù)器,使用MinIO構(gòu)建用于機(jī)器學(xué)習(xí),分析和應(yīng)用程序數(shù)據(jù)工作負(fù)載的高性能基礎(chǔ)架構(gòu)。這篇文章主要介紹了SpringBoot?搭建基于?MinIO?的高性能存儲服務(wù),需要的朋友可以參考下2022-03-03
Java實(shí)現(xiàn)在PPT中創(chuàng)建SmartArt圖形的示例代碼
SmartArt其實(shí)就是一個文字的可視化工具,用戶可在PowerPoint,Word,Excel中使用該特性創(chuàng)建各種圖形圖表。本文就將為您介紹如何通過Java應(yīng)用程序在PPT中創(chuàng)建SmartArt圖形,需要的可以參考一下2023-04-04

