日志框架及其使用方法

log4j和logBack,同一个人写的,logBack为log4j的升级版,SpringBoot中默认集成logBack

作用:记录软件发布后的一些bug,以及数据是怎样被操作的

传统开发弊端:

1.日志直接输出在控制台,关闭控制台后,日志消失

2.代码和日志耦合,需要到源码中去更改日志

日志技术优点:

1.可以将系统执行的信息,方便记录到指定的位置

2.可以随时以开关的形式控制日志的启停,无需侵入源码

核心模块:

1.logaback-core(必须有)

2.logback-calssic(必须有)

logback-access 可选

sl4j包下的LOGGER对象

日志记录不会覆盖,会在后面叠加

类名,自定义即可,代表日志对象的名称,可以自定义

LOGGER.info("重要的信息")

LOGGER.error("错误信息")

LOGGER.debug()执行流程

复制代码
<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.3</version>
    <!--<scope>test</scope>-->
</dependency>
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-core</artifactId>
    <version>1.2.3</version>
</dependency>
复制代码
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- Console log output -->
<!--    name属性 追加到控制台-->
    <appender name="Console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
<!--            输出的格式-->
            <!-- 格式化输出:%d:表示日期 %thread:表示线程名 %-5level:级别从左显示5个字符宽度-->
            <pattern>%d{HH:mm:ss.SSS} [%thread] > %green(%-5level) %cyan(%logger{35}) - %m%n</pattern>
        </encoder>
    </appender>

    <!-- Log file debug output -->
<!--    name属性追加到文件夹-->
    <appender name="File" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>d:/rczp-ssm/%d{yyyy-MM-dd}.log
                .zip</fileNamePattern>
            <!--日志最大保存时间-->
            <maxHistory>365</maxHistory>
        </rollingPolicy>
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} > %-5level %X{X-B3-TraceId:-} ${springAppName:-} %logger{35} %m%n</pattern>
        </encoder>
    </appender>
<!--    最低级别,大于等于此级别的日志才可以进行输出-->
    <root level="debug">
        <appender-ref ref="Console"/>
        <appender-ref ref="File"/>
    </root>
</configuration>

在resources目录下创建logback.xml配置文件。

spring会自动加载classpath路径下的配置文件,即resourecs目录下的配置文件,加载顺序如下:

首先尝试加载logback-test.xm

如未找到,尝试加载logback.groovy;

如未找到,尝试加载logback.xml;

如都未找到,则使用服务提供程序加载工具(在 JDK 1.6 中引入)通过在类路径中查找文件META-INF\services\ch.qos.logback.classic.spi.Configurator 来解析 com.qos.logback.classic.spi.Configurator接口的实现。 其内容应指定所需实现的完全限定类名。

如果上述操作均未成功,则 Logback 将使用BasicConfigurator自动配置自身,这将导致日志记录输出定向到控制台。

相关推荐
向宇it1 分钟前
【unity游戏开发——编辑器扩展】使用EditorGUI的EditorGUILayout绘制工具类在自定义编辑器窗口绘制各种UI控件
开发语言·ui·unity·c#·编辑器·游戏引擎
Paran-ia2 分钟前
【2025版】Spring Boot面试题
java·spring boot·后端
雷袭月启5 分钟前
Springboot实现重试机制
spring boot·重试机制
LUCIAZZZ12 分钟前
JVM之虚拟机运行
java·jvm·spring·操作系统·springboot
Python私教16 分钟前
Rust:重新定义系统编程的安全与效率边界
开发语言·安全·rust
hello_ejb320 分钟前
聊聊JetCache的缓存构建
java·前端·缓存
cainiao08060538 分钟前
Java 大视界——Java 大数据在智慧交通智能停车诱导系统中的数据融合与实时更新
java·大数据·开发语言
瑞雪兆丰年兮43 分钟前
数学实验(Matlab符号运算)
开发语言·算法·matlab·数学实验
chxii44 分钟前
6.2字节流
java·开发语言
不务专业的程序员--阿飞1 小时前
【SQL 如何解锁递归】
java·数据库·sql