SpringBoot日志规则study

一、日志框架选择

市面上的日志框架:
在这里插入图片描述
排除:
jboss-logging
JCL
日志抽象层选:SLF4J
日志实现:Logback

SpringBoot:底层是Spring框架,Spring框架默认用JCL
SpringBoot选用SLF4J和Logback;

二、SLF4j使用

1、如何在系统中使用SLF4j

之后开发时,应调用日志抽象层的方法
给系统导入slf4j和logback的实现jar

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class HelloWorld {
  public static void main(String[] args) {
    Logger logger = LoggerFactory.getLogger(HelloWorld.class);
    logger.info("Hello World");
  }
}

在这里插入图片描述
每个日志框架都有自己的配置文件,使用slf4j后,配置文件做成日志实现框架自己本身的配置文件

2、遗留问题

a(slf4j+logback):Spring(commons-logging) Hibenate(Jboss) Mybatis
别的框架也统一使用slf4j进行输出
在这里插入图片描述

让系统中的所有日志都统一到slf4j:
1、将系统中其他日志框架排除出去
2、用中间包替换原有日志框架包
3、再来导入slf4j其他的实现

三、SpringBoot日志关系

在这里插入图片描述
小结:
1)SpringBoot底层也是使用slf4j+logback的方式进行日志记录
2)SpringBoot也把其他的日志都替换成了slf4j
3)如果引入其他框架 需要把默认的日志依赖移除

@RunWith(SpringRunner.class)
@SpringBootTest
public class Springboot03LoggingApplicationTests {

    //记录器
    Logger logger = (Logger) LoggerFactory.getLogger(getClass());
    @Test
    public  void contextLoads() {
  //日志级别由低到高,可以调整输出的日志级别
        logger.trace("这是trace日志");
        logger.debug("这是debug日志");
        //springboot默认使用info级别,没有指定级别就用默认
        logger.info("这是info日志");
        logger.warn("这是warn日志");
        logger.error("这是error日志");
}

日志级别调整在配置文件中
在这里插入图片描述
日志输出情况:
1、logging.file.name
在这里插入图片描述
自动在根目录生成log文件(或者随便指定地址)
在这里插入图片描述
2、logging.file.path

#便是在当前磁盘的根目录创建spring文件夹和log文件夹;使用spring.log做默认文件
logging.file.path=/spring/log

3、日志的输出格式

#在控制台输出的日志格式
logging.pattern.console=

#指定文件中日志输出的格式
logging.pattern.file=
    <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ----> [%thread] ---> %-5level %logger{50} - %msg%n</pattern>

四、日志切换

给类路径下放上每个日志框架自己的配置文件即可;SpringBoot就不使用他默认配置的
在这里插入图片描述
在项目根目录加logback.xml:直接被日志框架识别
lockback-spring.xml:日志就不直接加载日志的配置项由springboot配置解析日志,可使用springboot高级profile功能,指定环境配置日志格式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值