Springboot 整合 logback 日志框架

文章目录

整合 Logback 日志框架

第一步:导入依赖

(Springboot 会自己整合。不需要单独导入依赖)

第二步:导入配置(logback.xml)

复制代码
<configuration>
 
    <!-- 1. 定义根日志级别 -->
    <root level="INFO">
        <appender-ref ref="STDOUT" />
        <appender-ref ref="FILE" />
    </root>
 
    <!-- 2. 定义输出到控制台的日志格式和目标 -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
 
    <!-- 3. 定义输出到文件的日志格式和目标 -->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>myapp.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>myapp.%d{yyyy-MM-dd}.log</fileNamePattern>
        </rollingPolicy>
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
 
</configuration>
详解

标签是配置文件的根元素。
元素定义了根日志级别,它决定了所有日志消息的最低级别,此处设置为 INFO。根日志级别是一个过滤器,低于此级别的日志消息将被忽略。
元素定义了不同的日志输出目标。上述配置文件中定义了两个 appender,分别是 STDOUT 和 FILE。每个 appender 都有一个 name 属性和 class 属性。STDOUT 是输出到控制台的 appender,FILE 是输出到文件的 appender。
元素定义了日志消息的格式。在上述配置中,STDOUT 和 FILE 都使用了相同的格式,包括时间戳、线程名、日志级别、日志记录器名称、消息文本等。你可以根据需要自定义日志消息的格式。
rollingPolicy 元素定义了日志文件的滚动策略。在 FILE appender 中,我们使用 TimeBasedRollingPolicy,它会根据时间滚动日志文件。例如,myapp.log 每天会滚动并保存为 myapp.2023-09-25.log,其中时间戳是当前日期。

使用(记录日志)



遇到问题一

解决方案

复制代码
<dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.8.0-beta4</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-simple</artifactId>
            <version>1.8.0-beta4</version>
        </dependency>
相关推荐
薛定谔的猫-菜鸟程序员20 小时前
基于 Electron 的本地短视频解析与下载工具:架构设计与工程实践
java·electron·音视频
音符犹如代码21 小时前
Arthas Profiler 火焰图实战:CPU 热点在哪一目了然
java·jvm·spring boot
小园子的小菜21 小时前
Java 并发编程:线程安全队列全解 —— 阻塞与非阻塞实现原理及源码深度剖析
java·开发语言
好好沉淀21 小时前
Windows 下升级 Maven 3.6.1 到 3.9.9 踩坑全记录
java·windows·maven
CodexDave1 天前
Python 自动化接单实战(一):把 CSV 需求做成配置驱动解析器
java·python·自动化·json·数据清洗·python自动化·csv处理
XS0301061 天前
Spring框架
java·后端·spring
Rabitebla1 天前
C++ 内存管理全面复习:从内存分布到 operator new/delete
java·c语言·开发语言·c++·算法·leetcode
萧瑟余晖1 天前
Java深入解析篇四之函数式编程详解
java·开发语言
大模型丫丫1 天前
Spring Boot 入门指南:从零开始构建微服务
spring boot·微服务·firefox
我是人✓1 天前
SQL主键与外键
java·数据库