SpringBoot日志使用:Slf4j与Logback

步骤一:引入lombok即可,lombok自带@Slf4j注解(网上说不用引入api的依赖,若报错可添加)

复制代码
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.30</version>
            <scope>provided</scope>
        </dependency>

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.30</version>
</dependency>
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.2.11</version>
</dependency>

步骤二:编写logback.xml

复制代码
<?xml version="1.0" encoding="UTF-8"?>
<configuration>

    <!-- 定义日志文件的输出路径 -->
    <property name="LOG_PATH" value="./logs" />

    <!-- 控制台输出 -->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>

    <!-- 文件输出 -->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${LOG_PATH}/app.log</file>

        <!-- 日志文件分割策略:基于时间 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 每天生成一个新日志文件 -->
            <fileNamePattern>${LOG_PATH}/app-%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- 日志文件保留7天 -->
            <maxHistory>7</maxHistory>
        </rollingPolicy>

        <!-- 日志格式 -->
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss} [日志信息] [%thread]  %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>

    <!-- 设置日志级别 -->
    <root level="INFO">
        <!-- 输出到控制台 -->
        <appender-ref ref="CONSOLE" />
        <!-- 输出到文件 -->
        <appender-ref ref="FILE" />
    </root>

</configuration>

步骤三:调用日志(注意引入@Slf4j依赖)

步骤四:根据xml配置可以从文件里找到app.log文件

相关推荐
kill bert2 小时前
Java八股文背诵 第四天JVM
java·开发语言·jvm
Pitayafruit5 小时前
📌 Java 工程师进阶必备:Spring Boot 3 + Netty 构建高并发即时通讯服务
spring boot·后端·netty
梦想实现家_Z5 小时前
SpringBoot实现MCP Server实战详解
spring boot·后端·mcp
你是理想5 小时前
wait 和notify ,notifyAll,sleep
java·开发语言·jvm
helloworld工程师6 小时前
【微服务】SpringBoot整合LangChain4j 操作AI大模型实战详解
java·eclipse·tomcat·maven
Java&Develop6 小时前
idea里面不能运行 node 命令 cmd 里面可以运行咋回事啊
java·ide·intellij-idea
q567315236 小时前
使用Java的HttpClient实现文件下载器
java·开发语言·爬虫·scrapy
遥不可及~~斌7 小时前
Spring Boot 项目日志系统全攻略:Logback、Log4j2、Log4j与SLF4J整合指南
spring boot·log4j·logback
你们补药再卷啦7 小时前
不用额外下载jar包,idea快速查看使用的组件源码
java·ide·intellij-idea
爱的叹息7 小时前
Spring Boot 自定义配置类(包含字符串、数字、布尔、小数、集合、映射、嵌套对象)实现步骤及示例
java·linux·spring boot