SpringBoot中的日誌

2021-10-11 16:22:01 字數 3113 閱讀 4114

常見的日誌框架有:

日誌抽象層:

日誌實現層:

spring預設採用jcl(apachecommons logging)框架,springboot預設採用slf4j+logback的形式。

開發的時候直接呼叫日誌抽象層的方法,而不是呼叫實現類中的方法:

import org.slf4j.logger;

import org.slf4j.logge***ctory;

public

class

logging

}

spring boot也能適配(jul、log4j),但是需要匯入適配層。

注意:

每個日誌框架都需要乙個配置檔案,這個配置檔案需要按日誌框架實現層進行配置。

springboot中預設採用slf4j+logback的方式,spring預設是commons-logging日誌框架,hibernate預設採用jboss-logging日誌框架,即每個框架都有各自預設的日誌實現方式。我們的目的是統一使用slf4j框架來做日誌的輸出。

如何讓系統中所有的日誌都統一到slf4j;

在pom.xml中右鍵,show dependencies…來檢視依賴圖譜:

springboot使用spring-boot-starter-logging來做日誌功能(內部預設都配置好了):

org.springframework.boot<

/groupid>

spring-boot-starter-logging<

/artifactid>

2.4.0

<

/version>

compile<

/scope>

<

/dependency>

注意:1、日誌級別在需要列印日誌的地方,加上下面的就好了:

//getclass(),代表當前列印日誌的類

logger logger = logge***ctory.

getlogger

(getclass()

);//日誌級別由低到高

logger.

trace

("trace");

logger.

debug

("debug");

logger.

info

("info");

logger.

warn

("warn");

logger.

error

("error"

);

使用舉例:

注意:

2、日誌配置

(1) logging.level

將com.glp包下的日誌級別設為warn

logging.level.com.glp=warn
(2) logging.file 和 logging.path

(3)指定日誌的輸出格式

logging.pattern.console=%d[

%thread]%-

5level %logger

-%msg%n

logging.pattern.file=

%d===[

%thread]===

%-5level ==

=%logger

====

%msg%n

日誌輸出格式:

%d表示日期時間,

%thread表示執行緒名,

%‐5level:級別從左顯示5個字元寬度

%logger 表示logger名字最長50個字元,否則按照句點分割。

%msg:日誌訊息,

%n是換行符

(4) 日誌框架的配置檔案

注意:

使用logback日誌框架實現日誌列印時,如果配置檔案使用logback-spring.xml,那麼就可以通過profile環境配置指定某段配置只在某個環境中生效。

name=「dev」,指該段配置在開發環境下生效。

匯入所要替換日誌框架及其適配層,並將其他日誌框架去除,用對應的替換包去替換掉原來的框架。具體參考結構圖:

如果要使用log4j2,那麼需要將spring-boot-starter-logging去除,並匯入依賴包:

org.springframework.boot<

/groupid>

spring-boot-starter-log4j2<

/artifactid>

<

/dependency>

這時我們發現依賴圖的構造變成log4j2了:

springboot中的日誌使用

springboot框架在企業中的使用越來越普遍,springboot日誌也是開發中常用的日誌系統。springboot預設就是使用slf4j作為日誌門面,logback作為日誌實現來記錄日誌。springboot中的日誌 spring boot starter logging artifactid...

SpringBoot的日誌系統

上傳真的很累,想看圖的可以訪問我的個人部落格 spring boot 底層的日誌框架採用了slf4j logback實現,其中slf4j實現日誌的抽象層,logback是日誌的實現層,兩者結合形成了spring boot的日誌框架。slf4j採用的也是工廠的設計模式 public class 可以在...

springboot日誌logging的配置

日誌輸出可以分為 控制台輸出和檔案輸出 日誌級別 trace debug info warn error fatal 如果設定為 warn 則低於 warn 的資訊都不會輸出。spring boot 中預設配置 error warn 和 info 級別的日誌輸出到控制台。loggertest類 sp...