springboot 操作日志记录,spring boot 日志管理

  springboot 操作日志记录,spring boot 日志管理

  00-1010 1.日志的作用2。如何使用日志3?打印自定义日志3.1获取日志对象3.2使用日志对象提供的方法打印日志3.3日志格式描述4。日志级别4.1日志级别的分类4.2日志级别的配置5。日志的持久性。更容易打印自定义日志6.1准备,将lombok添加到项目6.2使用@Slf4j获取log对象6.3使用log对象自定义打印日志6.4 lombok更多说明

  00-1010日志是程序的重要组成部分。当程序报错时,如果我们不看日志是很难发现错误的,除非你真的很有经验。所以日志的主要功能是消除和定位问题。

  日志:提供的功能

  记录用户的登录日志,然后分析用户是正常登录还是恶意登录。记录系统的运行记录,以便于数据恢复和定位操作。记录的程序执行时间将为程序未来的优化提供数据。

  00-1010当我们启动SpringBoot项目时,将输出日志:

  00-1010主要分为两步:

  获取一个类中的打印日志对象(log框架提供的日志对象,默认已经集成到SpringBoot中),使用log对象提供的方法打印日志。

  00-1010获取日志对象记录器,来自slf4j。不要启动错误的包。您需要日志记录器工厂来获取程序中的日志对象。

  

目录

导入org . slf4j . logger;导入org . SLF 4j . logger factory;导入org . spring framework . stereotype . controller;导入org . spring framework . web . bind . annotation . request mapping;导入org . spring framework . web . bind . annotation . response body;@ controller @ responsebody公共类usercontroller {//1。先获取log对象(来自SLF4J)private static final logger log=loger factory . get logger(user controller . class);//设置当前type @ request mapping(/say hi )public void say hi(){//2。使用log对象提供的打印方法打印log . trace( I am trace );Log.debug(我是debug );Log.info(我是info );Log.warn(我是warn );Log.error(我是错误);}}

 

  有的不打印,因为他只打印同级别或者比他级别高的日志。他在这里的默认值是信息级别。

  

1. 日志的作用

 

  00-1010反馈一些需要的日志,没必要全部打印出来。

  这就好比如果你是一家两万员工的公司的老板,需要每天看他们的反馈,大家都看吗?显然,这是完不成的。你只需要见一些领导…

  00-1010日志级别分为:

  Trace: Trace,有点意思(最低级别)debug:调试日志信息:一般信息日志warn:警告日志error:错误日志fatal:致命日志(系统输出日志,不能自定义打印)日志级别的顺序3360

  越往上,收到的信息越少。

  

2. 日志怎么用

 

  志级别的配置⽇志级别配置只需要在配置⽂件中设置logging.level配置项即可:

  

# 设置全局的日志级别logging.level.root=warn

 

  

# 设置局部文件夹的日志级别logging.level.com.example.demo.UserController=trace

 

  

 

  

 

  之前的 info 级别日志就没打印了.

  注意:当存在局部日志级别和全局的日志级别设置时,那么当访问局部日志时,使用的是局部日志级别.也就是 局部日志优先级 > 全局日志级别

  

 

  

5. 日志持久化

以上的⽇志都是输出在控制台上的,然⽽在⽣产环境上咱们需要将⽇志保存下来,以便出现问题之后追溯问题,把⽇志保存下来的过程就叫做持久化。

 

  日志持久化(将日志永久的保存到磁盘的某个位置)

  1:在配置文件中设置日志保存的路径,当设置了保存路劲之后,那么日志就会自动进行持久化

  2:在配置文件中设置日志保存的名称,日志会自动进行持久化

  

#设置日志保存的目录写法一logging.file.path=D:\log#设置日志保存的目录写法二logging.file.path=D:/log

 

  

 

  

 

  打开这个文件:

  

 

  

# 设置日志的保存名称logging.file.name=D:\log\spring-boot.log

 

  

 

  

 

  

 

  

 

  

6. 更简单的实现自定义日志的打印

 

  

6.1 准备工作,添加 lombok 到项目中

如果你当初没有添加 lombok 又不想重开项目,有这样一种办法,下载插件 EditStarters:

 

  

 

  

 

  

 

  

 

  

 

  

 

  

 

  

 

  

6.2 使用 @Slf4j 得到日志对象

 

  

import lombok.extern.slf4j.Slf4j;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controller@ResponseBody@Slf4j //替代了之前需要通过 LoggerFactory.getLogger 操作public class UserController {//1. 先得到日志对象(来自 slf4j)// private static final Logger log =// LoggerFactory.getLogger(UserController.class); //设置当前的类型 @RequestMapping("/sayhi") public void sayHi(){ //2. 使用日志对象提供的打印方法进行日志打印 log.trace("我是 trace"); log.debug("我是 debug"); log.info("我是 info"); log.warn("我是 warn"); log.error("我是 error"); }}

 

  

6.3 使用 log 对象自定义打印日志

 

  

 

  看.class文件,他是给我们转换了的:

  

 

  Java 程序的运⾏原理:

  

 

  Lombok 的作⽤如下图所示:

  

 

  

 

  

6.4 lombok 更多注解说明

注解作用@Getter⾃动添加 getter ⽅法@Setter⾃动添加 setter ⽅法@ToString⾃动添加 toString ⽅法@EqualsAndHashCode⾃动添加 equals 和 hashCode ⽅法@NoArgsConstructor⾃动添加⽆参构造⽅法@AllArgsConstructor⾃动添加全属性构造⽅法,顺序按照属性的定义顺序@NonNull属性不能为 null@RequiredArgsConstructor⾃动添加必需属性的构造⽅法,final + @NonNull 的属性为必需组合注解:

 

  注解作用@Data@Getter + @Setter + @ToString +@EqualsAndHashCode +@RequiredArgsConstructor +@NoArgsConstructor日志注解:

  注解作⽤@Slf4j添加⼀个名为 log 的⽇志,使⽤ slf4j到此这篇关于SpringBoot深入了解日志的使用的文章就介绍到这了,更多相关SpringBoot日志内容请搜索盛行IT以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: