日志框架

日志

  • 方便了解项目运行状况
  • 一个框架,记录项目运行时的一些信息,日志框架
  • 统一的接口层;日志门面(日志的一个抽象层);给项目中导入具体的日志实现;日志框架都是实现日志抽象层的东西
  • 常见的日志框架:JUL、JCL、Jboss-logging、logback、log4j、log4j2、slf4j等等等等
日志门面(日志的抽象层)日志实现
JCL、SLF4J、Jboss-logginglog4j、JUI、log4j2、logback

左边选一个接口(抽象层),右边选一个实现

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

SLF4J的使用

开发时,调用的是日志记录实现方法,不应该直接调用实现类,而是调用抽象层的方法;

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");
  }
}

默认调用的是logback的实现
关于调用其他实现,有的需要适配层,log4j、JVM
在这里插入图片描述

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

slf4j的运用

	//记录器
	Logger logger= LoggerFactory.getLogger(getClass());
	@Test
	void contextLoads() {
		/*日志级别
		* 从高到低   trace<debug<info<warn<error
		* 可以调整输出的日志级别,日志就只会在这个级别及以后的高级别生效*/
		logger.trace("trace日志");
		logger.debug("debug日志");
		//SpringBoot默认给我们使用的是info级别的
		logger.info("info日志");
		logger.warn("warn日志");
		logger.error("error日志");
	}

测试结果:
在这里插入图片描述
没有显示trace和debug
在配置文件中,调整日志级别:

logging.level.com.example=trace

再次运行结果:
在这里插入图片描述
日志文件的生成:

#logging.file=地址+文件名.log,不指定路径则在当前项目下生成
logging.file=G:/spring.log

#logging.path是指定路径,跟logging.file有些冲突,通常是用path,文件名用SpringBoot默认的
#在当前磁盘的根路径下创建spring文件夹和里面的log文件夹
logging.path=/spring/log

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

#指定文件中日志输出的格式
logging.pattern.file=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值