欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Logback在SpringBoot中的詳細(xì)配置教程

 更新時(shí)間:2025年05月26日 15:45:39   作者:悟能不能悟  
Spring Boot 默認(rèn)會(huì)加載 classpath 下的 logback-spring.xml(推薦)或 logback.xml 作為 Logback 的配置文件,下面我們來(lái)看看具體的配置教程吧

1. Logback 配置文件

Spring Boot 默認(rèn)會(huì)加載 classpath 下的 logback-spring.xml(推薦)或 logback.xml 作為 Logback 的配置文件。

?推薦使用 logback-spring.xml,因?yàn)?Spring Boot 提供了擴(kuò)展支持(例如基于 Profile 的配置)。

配置文件位置

放在 src/main/resources/ 目錄下。

2. 基礎(chǔ)配置示例

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="30 seconds">
    <!-- 定義變量 -->
    <property name="LOG_PATH" value="./logs" />
    <property name="LOG_FILE" value="myapp" />
 
    <!-- 控制臺(tái)輸出 -->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
 
    <!-- 滾動(dòng)文件輸出 -->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${LOG_PATH}/${LOG_FILE}.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${LOG_PATH}/${LOG_FILE}-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <maxFileSize>50MB</maxFileSize>
            <maxHistory>30</maxHistory>
            <totalSizeCap>1GB</totalSizeCap>
        </rollingPolicy>
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
 
    <!-- 日志級(jí)別和輸出源配置 -->
    <root level="INFO">
        <appender-ref ref="CONSOLE" />
        <appender-ref ref="FILE" />
    </root>
 
    <!-- 指定包或類(lèi)的日志級(jí)別 -->
    <logger name="com.example.demo" level="DEBUG" />
</configuration>

3. 關(guān)鍵配置項(xiàng)說(shuō)明

Appender(日志輸出器)

?ConsoleAppender: 輸出日志到控制臺(tái)。

?RollingFileAppender: 輸出到文件并支持滾動(dòng)(按時(shí)間、大小分割)。

  • SizeAndTimeBasedRollingPolicy: 根據(jù)時(shí)間和文件大小滾動(dòng)。
  • maxFileSize: 單個(gè)文件最大大小。
  • maxHistory: 保留的歷史日志文件數(shù)量。
  • totalSizeCap: 日志文件總大小限制。

Encoder(日志格式化)

<pattern> 定義日志格式,常用占位符:

  • %d: 日期時(shí)間
  • %thread: 線程名
  • %-5level: 日志級(jí)別(左對(duì)齊,寬度5)
  • %logger{36}: 日志輸出者的名稱(chēng)(最長(zhǎng)36字符)
  • %msg: 日志消息
  • %n: 換行符

Logger 和 Root Logger

  • <root>: 根日志配置,所有日志默認(rèn)繼承此配置。
  • <logger>: 針對(duì)特定包或類(lèi)配置日志級(jí)別。

4. Spring Boot 特有功能

通過(guò) application.properties 覆蓋配置

在 application.properties 中可以覆蓋部分日志配置:

# 設(shè)置根日志級(jí)別
logging.level.root=INFO
# 設(shè)置特定包日志級(jí)別
logging.level.com.example.demo=DEBUG
# 日志文件路徑
logging.file.path=./logs
logging.file.name=./logs/app.log

按 Profile 配置日志

在 logback-spring.xml 中使用 <springProfile> 實(shí)現(xiàn)多環(huán)境配置:

<springProfile name="dev">
    <root level="DEBUG">
        <appender-ref ref="CONSOLE" />
    </root>
</springProfile>
 
<springProfile name="prod">
    <root level="INFO">
        <appender-ref ref="FILE" />
    </root>
</springProfile>

5. 高級(jí)配置

異步日志

使用 AsyncAppender 提升性能:

<appender name="ASYNC_FILE" class="ch.qos.logback.classic.AsyncAppender">
    <appender-ref ref="FILE" />
    <!-- 隊(duì)列大小,超出此值會(huì)丟棄 TRACE/DEBUG 日志 -->
    <queueSize>256</queueSize>
</appender>

彩色日志輸出

在 ConsoleAppender 中啟用顏色:

<encoder>
    <pattern>%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(%-5level) %clr(${PID}){magenta} --- [%thread] %clr(%logger{36}){cyan} : %msg%n</pattern>
</encoder>

6. 常見(jiàn)問(wèn)題解決

配置文件未生效

  • 確認(rèn)文件名是 logback-spring.xml 且位于 src/main/resources。
  • 檢查是否有其他日志框架(如 Log4j2)沖突,排除相關(guān)依賴(lài)。

日志文件未滾動(dòng)

  • 檢查 RollingFileAppender 配置,確保路徑和文件名合法。
  • 確保 maxHistory 和 totalSizeCap 設(shè)置合理。

到此這篇關(guān)于Logback在SpringBoot中的詳細(xì)配置教程的文章就介紹到這了,更多相關(guān)SpringBoot配置Logback內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Mybatis分頁(yè)插件PageHelper的配置和簡(jiǎn)單使用方法(推薦)

    Mybatis分頁(yè)插件PageHelper的配置和簡(jiǎn)單使用方法(推薦)

    在使用Java Spring開(kāi)發(fā)的時(shí)候,Mybatis算是對(duì)數(shù)據(jù)庫(kù)操作的利器了。這篇文章主要介紹了Mybatis分頁(yè)插件PageHelper的配置和使用方法,需要的朋友可以參考下
    2017-12-12
  • 詳細(xì)聊聊RabbitMQ竟無(wú)法反序列化List問(wèn)題

    詳細(xì)聊聊RabbitMQ竟無(wú)法反序列化List問(wèn)題

    這篇文章主要給大家介紹了關(guān)于RabbitMQ竟無(wú)法反序列化List的相關(guān)資料,文中通過(guò)示例代碼將問(wèn)題以及解決的過(guò)程介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2021-09-09
  • SpringBoot如何配置CROS Filter

    SpringBoot如何配置CROS Filter

    這篇文章主要介紹了SpringBoot如何配置CROS Filter問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • spring-retry簡(jiǎn)單使用方法

    spring-retry簡(jiǎn)單使用方法

    這篇文章主要介紹了spring-retry簡(jiǎn)單使用方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • spring boot使用@Async異步注解的實(shí)現(xiàn)原理+源碼

    spring boot使用@Async異步注解的實(shí)現(xiàn)原理+源碼

    通常我們都是采用多線程的方式來(lái)實(shí)現(xiàn)上述業(yè)務(wù)功能,但spring 提供更優(yōu)雅的方式來(lái)實(shí)現(xiàn)上述功能,就是@Async 異步注解,在方法上添加@Async,spring就會(huì)借助AOP,異步執(zhí)行方法,接下來(lái)通過(guò)本文給大家介紹spring boot異步注解的相關(guān)知識(shí),一起看看吧
    2021-06-06
  • REST架構(gòu)及RESTful應(yīng)用程序簡(jiǎn)介

    REST架構(gòu)及RESTful應(yīng)用程序簡(jiǎn)介

    這篇文章主要為大家介紹了REST架構(gòu)及RESTful的應(yīng)用程序簡(jiǎn)介,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-03-03
  • java中符號(hào)@的作用及用法舉例詳解

    java中符號(hào)@的作用及用法舉例詳解

    在Java編程語(yǔ)言中,@符號(hào)被稱(chēng)為注解(Annotation),下面這篇文章主要介紹了java中符號(hào)@的作用及用法的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-04-04
  • shade解決mybatis包沖突問(wèn)題

    shade解決mybatis包沖突問(wèn)題

    這篇文章主要介紹了shade解決mybatis包沖突問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • SpringMVC中Json數(shù)據(jù)格式轉(zhuǎn)換

    SpringMVC中Json數(shù)據(jù)格式轉(zhuǎn)換

    本文主要介紹了SpringMVC中Json數(shù)據(jù)格式轉(zhuǎn)換的相關(guān)知識(shí)。具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧
    2017-03-03
  • Java解析JSON數(shù)據(jù)時(shí)報(bào)錯(cuò)問(wèn)題解決方案

    Java解析JSON數(shù)據(jù)時(shí)報(bào)錯(cuò)問(wèn)題解決方案

    這篇文章主要介紹了Java解析JSON數(shù)據(jù)時(shí)報(bào)錯(cuò)問(wèn)題解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10

最新評(píng)論