SpringBoot——日志管理

本文介绍了SLF4J,一个用于各种日志框架的简单门面规范,以及SpringBoot如何默认使用Logback进行日志管理。详细解析了SpringBoot项目的日志依赖结构,强调在使用Logback时无需额外引入jar包。同时,文章深入探讨了Logback的配置文件,包括默认的彩色日志设置,并提供了如何自定义配置文件路径的方法,包括在yml文件中指定路径。
摘要由CSDN通过智能技术生成

一、SLF4J定义

slf4j,即(Simple Logging Facade for Java,简单门面日志)。它是对所有日志框架制定的一种规范、标准、接口,并不是一个框架的具体的实现,它只服务于各种各样的日志系统。
slf4j就是设计模式之门面(外观)模式的典型应用。

二、SpringBoot日志

结论:Springboot默认使用logback来管理日志

先看一个简单springboot项目的依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.4.1</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>logg</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>logg</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

</project>

其中只包含一个spring-boot-starter-web依赖,我们打开依赖图来看,如下
在这里插入图片描述

放大了如下:
在这里插入图片描述

springboot日志系统中包含三部分依赖,一是slf4j,二是logback,三是log4j,
其中springboot默认使用的slf4j+logback的日志系统,故当使用logback时无需引入额外的jar包。

三、logback的配置文件详解

其中,springboot默认采用彩色日志,但是若不在logback配置文件中显示声明则不会使用

<?xml version="1.0" encoding="UTF-8"?>
<!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL,如果设置为WARN,则低于WARN的信息都不会输出 -->

<!-- scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true -->
<!-- scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 -->
<!-- debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false-->
<configuration scan="true" scanPeriod="10 seconds">

    <!-- 
        springboot默认使用彩色日志,但是指定logback配置文件后,默认的彩色日志文件失效,因此需在配置文件中显示声明
          这里引入springboot默认的配置文件(位于spring-boot-2.4.1.jar包中),
          并在后面控制台输出日志中使用默认配置文件的CONSOLE_LOG_PATTERN属性,来输出彩色日志,如下51行所示
     -->
    <include resource="org/springframework/boot/logging/logback/base.xml" />


    <!-- 彩色日志
            此段内容与base.xml里引用的defaults.xml中的内容一致,故二者选其一即可
     -->
    <!-- 彩色日志依赖的渲染类 -->
    <!-- <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
    <conversionRule conversionWord=
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值