SpringBoot的日志文件

文章目录

  • 前言
    • 日志怎么用
    • 自定义打印日志
    • ⽇志级别 - 了解
    • ⽇志持久化
    • Lombok提供的方法


前言

上文讲述了 SpringBoot项目的构建 与配置文件的使用 ,下面来介绍 SpringBoot 的日志文件 , 日志在程序 中起到的作用是很大的 , 谁写的程序能不报错误呢, 日志就是一种让你快速找到错误的方式! , 当然日志也不止是寻找错误 ,还有很多的用法 , 比如登录日志 ,记录谁来登录等等, 但对于我们程序员来说 , 最重要的就是定位错误

日志怎么用

Spring Boot 项⽬在启动的时候默认就有⽇志输出,如下图所示:
SpringBoot的日志文件_第1张图片
这些日志是默认的 , SpringBoot 内置了日志框架 , 一般我们是自定义日志来打印的, 而且日志是默认打印在控制台上的, 是不能保存的 , 所以 我们还要学习如何把日志永久保存下来

自定义打印日志

在程序中得到⽇志对象 , 要在程序中获取到日志, 就需要一个类 ,LoggerFactory ,如下代码所示

private static Logger logger = LoggerFactory.getLogger(UserController.class);

⽇志⼯⼚需要将每个类的类型传递进去,这样我们才知道⽇志的归属类,才能更⽅便、更直观的定位到问题类, Logger 对象是属于 org.slf4j 包下的,不要导⼊错包
Spring Boot 中内置了⽇志框架 Slf4j,所以咱们可以直接在程序中调⽤ slf4j 来输出⽇志

打印日志 - 打印效果

logger.info("--------------要输出⽇志的内容----------------");

在这里插入图片描述

⽇志级别 - 了解

trace:微量,少许的意思,级别最低;
debug:需要调试时候的关键信息打印;
info:普通的打印信息(默认⽇志级别);
warn:警告,不影响使⽤,但需要注意的问题;
error:错误信息,级别较⾼的错误⽇志信息;
fatal:致命的,因为代码异常导致程序退出执⾏的事件。

⽇志级别配置只需要在配置⽂件中设置“logging.level”配置项即可,如下所示:

logging:
 level:
 root: error

⽇志持久化

以上的⽇志都是输出在控制台上的 , 在想要永久保存日志的情况下 , 就需要在配置⽂件中指定⽇志的存储⽬录或者是指定⽇志保存⽂件名之后,Spring Boot 就会将控制台的⽇志写到相应的⽬录或⽂件下了。

# 设置⽇志⽂件的⽬录
logging:
 file:
 path: D:\\home\\ruoyi
 
# 设置⽇志⽂件的⽂件名
logging:
 file:
 name: D:\\home\\ruoyi\\spring-1204.log

当然 有更简单的方式 , 使用神器 L:ombok来解决这个日志问题
① 添加Lombok依赖

<dependency>
<groupId>org.projectlombok</groupId>
 <artifactId>lombok</artifactId>
 <version>1.18.20</version>
 <optional>true</optional>
</dependency>

然后在类上 加上@Slf4j注解, 最后打印用log对象输出日志即可

Lombok提供的方法

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

而@ Data 注解则提供了 上述大多数的方法 , 除了@NoArgsConstructor ⾃动添加⽆参构造⽅法
@AllArgsConstructor ⾃动添加全属性构造⽅法,顺序按照属性的定义顺序
@NonNull 属性不能为 null 这三个.

你可能感兴趣的:(spring,boot,java,spring)