SpringBoot配置log4j2的實(shí)現(xiàn)示例
Log4j2 介紹
Spring Boot 中默認(rèn)使用 Logback 作為日志框架,接下來(lái)我們將學(xué)習(xí)如何在 Spring Boot 中集成與配置 Log4j2。在配置之前,我們需要知道的是 Log4j2 是 Log4j 的升級(jí)版,它在 Log4j 的基礎(chǔ)上做了諸多改進(jìn):
- 異步日志;
- 支持 Java8 lambda 風(fēng)格的懶加載日志;
- 過(guò)濾器;
- 插件;
- 并發(fā)性改進(jìn);
- 支持: SLF4J, Commons Logging, Log4j-1.x 以及 java.util.logging;
- 配置熱加載;
- 自定義日志級(jí)別;
看到上面這些新特性,我們肯定特別想在我們的 Spring Boot 應(yīng)用中使用 Log4j2
添加 Maven 依賴
Spring Boot 默認(rèn)使用的是 logback, 想要使用 Log4j2, 我們需要首先排除掉默認(rèn)的日志框架,然后添加 log4j2 依賴,下面是 pom.xml 文件:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>
添加 Log4j2 配置文件
Spring Boot 支持以下 4 種格式的配置文件:
- xml(默認(rèn)的)
- json
- yaml
- properties 文件
Spring Boot 如果在 classpath:目錄下找到了 log4j2.xml 或者 log4j2.json 或者 log4j2.properties或者log4j2.yaml的其中任意一個(gè)配置文件,就會(huì)自動(dòng)加載并使用它。
接下來(lái),我們來(lái)看看 log4j2.xml 格式,要如何配置?
在 /src/main/resource 目錄下創(chuàng)建 log4j2.xml 配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN" monitorInterval="30">
<Properties>
<Property name="PID">????</Property>
<Property name="LOG_PATTERN">%clr{%d{yyyy-MM-dd HH:mm:ss.SSS}}{faint} %clr{%5p} %clr{${sys:PID}}{magenta} %clr{---}{faint} %clr{[%15.15t]}{faint} %clr{%-40.40c{1.}}{cyan} %clr{:}{faint} %m%n%xwEx</Property>
</Properties>
<Appenders>
<Console name="Console" target="SYSTEM_OUT" follow="true">
<PatternLayout pattern="${LOG_PATTERN}"/>
</Console>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="Console"/>
</Root>
</Loggers>
</Configuration>到此這篇關(guān)于SpringBoot配置log4j2的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)SpringBoot配置log4j2內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- SpringBoot使用log4j2將日志記錄到文件及自定義數(shù)據(jù)庫(kù)的配置方法
- SpringBoot項(xiàng)目整合Log4j2實(shí)現(xiàn)自定義日志打印失效問(wèn)題解決
- SpringBoot整合Log4j2實(shí)現(xiàn)自定義日志打印失效的原因及解決
- SpringBoot+log4j2.xml使用application.yml屬性值問(wèn)題
- springboot3.x版本集成log4j遇到Logging?system?failed?to?initialize?using?configuration?from‘classpath:log4問(wèn)題
相關(guān)文章
Java編程調(diào)用微信接口實(shí)現(xiàn)圖文信息推送功能
這篇文章主要介紹了Java編程調(diào)用微信接口實(shí)現(xiàn)圖文信息等推送功能,涉及java微信圖文信息推送接口調(diào)用及相關(guān)文件、字符串編碼轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下2017-08-08
關(guān)于ResponseEntity類和HttpEntity及跨平臺(tái)路徑問(wèn)題
這篇文章主要介紹了關(guān)于ResponseEntity類和HttpEntity及跨平臺(tái)路徑問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07
java selenium教程之selenium詳細(xì)介紹
本文主要介紹Java selenium,這里整理了selenium的一些基本資料,此軟件主要用于Web UI自動(dòng)測(cè)試框架,有興趣的同學(xué)可以看一下2016-08-08
SpringBoot 配置文件加載位置與優(yōu)先級(jí)問(wèn)題詳解
這篇文章主要介紹了SpringBoot 配置文件加載位置與優(yōu)先級(jí)問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-09-09
spring security獲取用戶信息的實(shí)現(xiàn)代碼
這篇文章主要介紹了spring security獲取用戶信息的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
MyBatis-Plus解決邏輯刪除與唯一索引的問(wèn)題
本文主要介紹了MyBatis-Plus解決邏輯刪除與唯一索引的問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08
springboot解決Class path contains multiple 
這篇文章主要介紹了springboot解決Class path contains multiple SLF4J bindings問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07

