sprintboot logback高级特性使用

一、业务需求

日志级别的分类

日志的级别分为:

  1. trace:微量,少许的意思,级别最低
  2. info:普通的打印信息
  3. debug:需要调试时候的关键信息打印
  4. warn:警告,不影响使⽤,但需要注意的问题
  5. error:错误信息,级别较⾼的错误日志信息
  6. fatal:致命的,因为代码异常导致程序退出执行的事件

日志级别的顺序:

二、实现

只在文件内部使用,实现步骤:

      ①编写继承了ch.qos.logback.classic.pattern.ClassicConverter类的方法

      ②重写convert()方法,将需要用到的变量返回即可

      ③在xml配置文件中引入,并使用

package net.company.springboot.logback.classic;

import ch.qos.logback.classic.pattern.ClassicConverter;
import ch.qos.logback.classic.spi.ILoggingEvent;
import org.apache.skywalking.apm.toolkit.trace.TraceContext;

public class TraceConverter extends ClassicConverter {
  public TraceConverter() {
  }

  public String convert(ILoggingEvent event) {
    String traceId = TraceContext.traceId();
    return null != traceId ? traceId : "-";
  }
}

logback.xml

项目的 resources 资源目录下新建 logback 日志配置文件(logback.xml )

<?xml version="1.0" encoding="UTF-8" ?>
<configuration scan="false" scanPeriod="60000" debug="false">
    <!-- 获取 traceId 配置类-->
    <conversionRule conversionWord="trace" converterClass="net.company.springboot.logback.classic.TraceConverter"/>

    <!-- 自定义 logback 日志格式-->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS}|%level|%trace|[%thread] %logger{36} -%msg%n</Pattern>
        </encoder>
    </appender>

    <root level="info">
        <!-- 控制台打印 -->
        <appender-ref ref="CONSOLE"/>
    </root>
</configuration>

多环境配置

在一个基于Spring boot开发的项目里,常常需要有多套环境的配置:开发,测试以及产品。使用springProfile 可以分别配置开发(dev),测试(test)以及生产(prod)等不同的环境

<!-- 开发环境和测试环境 -->
<springProfile name="dev,test">
    <logger name="com.atguigu" level="INFO">
        <appender-ref ref="CONSOLE" />
    </logger>
</springProfile>
<!-- 生产环境 -->
<springProfile name="prod">
    <logger name="com.atguigu" level="ERROR">
        <appender-ref ref="CONSOLE" />
        <appender-ref ref="FILE" />
    </logger>
</springProfile>

打印sql

logging:
  config: classpath:logback.xml
  level:
    net:
      company:
        test:
          dao:
            mapper: debug   #mapper层 sql日志 DEBUG级别输出

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值