springBoot 日志

整合原理

规范:项目开发中不要编写:System.out.printIn(),应该用日志记录信息
在这里插入图片描述
1、spring使用commons-logging作为内部日志,但底层日志实现是开放的,可对接其他日志框架
2、支持jul,log4j,logback,springBoot提供了默认的控制台输出配置,也可以配置输出为文件
3、logback是默认使用的
4、虽然日志框架很多,但是我们不用担心,使用springBoot的默认配置就能工作的很好

springBoot 日志是如何配置好的
1、每个starter场景,都会导入一个核心场景spring-boot-starter
2、核心场景引用了日志所有功能spring-boot-logging
3、默认使用了logback+slf4j组合作为默认底层日志
4、日志是系统已启动就要用的,xxxautoconfiguration是系统启动好了以后放好的组件,后来用的
5、日志是利用监听机制配置好的,appLicationlistener
6、日志所有的配置都可以通过修改配置文件实现,以logging开始的所有配置

日志格式

默认日志格式

在这里插入图片描述

在配置文件中修改日志格式

在这里插入图片描述
在这里插入图片描述

在业务中写日志

在这里插入图片描述

package com.atguigu.boot.controller;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author jitwxs
 * @date 2023年10月17日 19:59
 */
@RestController
public class Hellower {
    Logger logger = LoggerFactory.getLogger(getClass());
    @GetMapping("/h")
    public String hello(){
        logger.info("hahahaha");
        return "hello";
    }
}

在调用接口的时候就会返回日志
在这里插入图片描述

日志级别

由高到低:All,TRACE,DEBUG,INFO,WARN,ERROR,FATAL,OFF
只会打印指定级别及以上级别的日志
All:打印所有的日志
TRACE:追踪框架详细流程日志,一般不适用
DEBUG:开发调试细节日志
INFO:关键,感兴趣信息日志
WARN:警告但不是错误的信息日志 比如:版本过失
ERROR:业务错误日志,比如出现各种异常
FATAL:致命错误日志,比如jvm系统崩溃
OFF:关闭所有日志

不指定级别的所有类,都是用root指定的级别作为默认级别
springBoot日志默认级别是INFO
1、在application.properties/Yaml中配置logging.level=指定日志级别
2、level可取值范围:TRACE,DEBUG,INFO,WARN,ERROR,FATAL,Or OFF,定义在logLEVEL类中
3、root的logger-name叫root,可以配置logging.level.root=warn,代表所有未指定日志级别都是用root的warn级别
在这里插入图片描述
在配置文件中调整日志级别,日志级别默认是info
在这里插入图片描述

日志传递参数
在这里插入图片描述
在这里插入图片描述

日志分组

在这里插入图片描述

#日志分组
logging.group.abc=com.atguigu.boot.controller,com.atguigu.boot.controller.service,com.aaa,com.bbb
logging.level.abc = debug
logging.level.sql = debug

文件输出

#指定日志文件名
#1、只写名字,就生成到当前项目同位置的demo.log
#2、写名字+路径:生成到指定位置的指定文件

logging.file.name=haha.log

在这里插入图片描述
在这里插入图片描述

如果path和name同时存在都会生成
在这里插入图片描述

在这里插入图片描述

归档和切割

在这里插入图片描述

归档

每天的日志单独存到一个文件中

切割

每个文件10MB,超过大小切割成另外一个文件
在这里插入图片描述

#归档分割
logging.logback.rollingpolicy.file-name-pattern=${LOG_FILE}.%d{yyyy-MM-dd}.%i.gz
#超过1MB进行分割
logging.logback.rollingpolicy.max-file-size= 1MB

自定以日志系统

在这里插入图片描述

springBoot 默认使用的是logback的日志
在这里插入图片描述
在这里插入图片描述

切换默认日志场景 log4j2的使用

禁用原来的日志导入新的日志
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

最佳实战

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值