日志系统

日志系统

重要意义

系统在运行过程中出了问题就需要通过日志来进行排查,在上手新技术时,都要习惯性关注它是如何打印新技术的.

具体操作

Spring自带了commons-loggin日志系统

要转换成slf4j的日志系统需要先导入jcl-over-slf4j.jar将Spring自带的日志系统转换为slf4j,然后导入坐标

1、导入坐标

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>jcl-over-slf4j</artifactId>
    <version>1.7.25</version>
</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.3</version>
</dependency>

2、编写日志配置文件

<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true">
    <!-- 指定日志输出的位置 -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <!-- 日志输出的格式 --> <!-- 按照顺序分别是:时间、日志级别、线程名称、打印日志的类、日志主体 内容、换行 -->
            <pattern>[%d{HH:mm:ss.SSS}] [%-5level] [%thread] [%logger] [%msg]%n</pattern>
        </encoder>
    </appender>
    <!-- 设置全局日志级别。日志级别按顺序分别是:DEBUG、INFO、WARN、ERROR -->
    <!-- 指定任何一个日志级别都只打印当前级别和后面级别的日志。 -->
    <root level="INFO">
        <!-- 指定打印日志的 appender,这里通过“STDOUT”引用了前面配置的 appender -->
        <appender-ref ref="STDOUT"/>
    </root>
    <!-- 根据特殊需求指定局部日志级别 -->
    <logger name="com.example.mapper" level="DEBUG"/>
</configuration>

使用日志打印信息和使用system.out.println打印信息的区别:

sysout如果不删除,那么执行到代码语句时必然会打印;

如果使用日志方式打印,可以通过日志级别控制信息是否打印.

原文地址:https://www.cnblogs.com/Adam-Ye/p/13338074.html