当前位置: 首页 > article >正文

【第六篇】 SpringBoot的日志基础操作

        

简介

        日志系统在软件开发中至关重要,用于调试代码、记录运行信息及错误堆栈。本篇文章不仅详细介绍了日志对象的创建及快速使用,还说明了日志持久化的两种配置方式和滚动日志的设置。实际开发需根据场景选择合适的日志级别和存储策略。文章内容若存在错误或需改进的地方,欢迎大家指正!若对操作有任何疑问欢迎留言!非常感谢!

目录

一、日志的作用及基础使用

1、日志的作用

2、日志的基础使用

3、日志级别

(1)直接配置(不常用)

(2)设置根日志级别

二、使用lombok快速添加日志

1、导入lombok的坐标

2、使用@Slf4j注解

三、日志格式解析

四、日志持久化

1、日志持久化两种方式

(1)使用name属性(优先级高)

(2)使用path属性(较name优先级低)

2、滚动日志


一、日志的作用及基础使用

1、日志的作用

  • 编程期调试代码
  • 运行期记录信息
    • 记录日常运行的重要信息(峰值流量、平均响应时长... ...)
    • 记录应用报错信息(错误堆栈)
    • 记录运维过程数据(扩容、宕机、报警... ...)

2、日志的基础使用

        首先在类里面创建一个记录日志的对象,这里使用的是slf4j包下的Logger。然后使用对象直接调用日志方法即可,这里展示了常用的四种级别的日志打印的使用方法。

        运行项目,然后请求一下这个地址,就会发现在控制台上已经有了日志的输出。框架中默认的日志级别是info,所以只会输出info及更高级别的日志。

3、日志级别

  • TRACE:运行堆栈信息,使用率极低
  • DEBUG:开发者调式代码使用
  • INFO:记录运维过程数据(默认,且常用)
  • WARN:记录运维过程警告数据
  • ERROR:记录错误堆栈信息
  • FATAL:灾难信息,合并计入ERROR

        框架中默认的日志级别是INFO,当然可以通过配置等方式来设置日志打印级别。

(1)直接配置(不常用)

        直接在配置文件中设置日志级别为true,然后运行之后可以发现控制台日志的级别发生改变。这是一个全局的调试模式开关,会打印整个应用程序的行为。

(2)设置根日志级别

        仅配置日志系统的根日志级别(Root Logger),不涉及其他调试功能。只影响所有通过该日志系统输出的日志。

二、使用lombok快速添加日志

1、导入lombok的坐标

2、使用@Slf4j注解

        哪里需要打印日志,那么直接在类上声明@Slf4j注解即可,然后使用方法不变,还是log对象。

三、日志格式解析

四、日志持久化

1、日志持久化两种方式

(1)使用name属性(优先级高)

        这种方式可以直接指定路径加文件名,这样的话会在指定路径下生成指定名称的日志文件。

(2)使用path属性(较name优先级低)

        该属性只能指定路径,不能指定名称,会在指定路径下生成一个spring.log的日志文件。

2、滚动日志

        每个系统对单个文件的大小都是有限制的,而且当日志文件过大时非常不宜于查看,最后所有记录日志的时候都是会将日志进行分片的,不会将所有的日志都记录在同一个文件当中。

        下面是根据大小进行分片,注意max-file-size只是一个近似值,并没有那么精确。file-name-pattern用于设置日志的格式,例如下面这种使用日期加序号的形式。

http://www.lryc.cn/news/2404442.html

相关文章:

  • Pluto论文阅读笔记
  • ubuntu显示器未知
  • Faiss向量数据库全面解析:从原理到实战
  • matlab 2024a ​工具箱Aerospsce Toolbox报错​
  • 使用有限计算实现视频生成模型的高效训练
  • Server2003 B-1 Windows操作系统渗透
  • 一次Oracle的非正常关闭
  • AI不会杀死创作,但会杀死平庸
  • JeecgBoot低代码管理平台
  • Fetch与Axios:区别、联系、优缺点及使用差异
  • YOLO11解决方案之分析
  • yolov11与双目测距结合,实现目标的识别和定位测距(onnx版本)
  • 基于51单片机和8X8点阵屏、独立按键的填充消除类小游戏
  • 将数据库表导出为C#实体对象
  • 物联网技术发展与应用研究分析
  • 金融系统渗透测试
  • C++ 信息学奥赛总复习题
  • 9.进程间通信
  • 性能剖析:在 ABP 框架中集成 MiniProfiler 实现性能可视化诊断
  • React 基础入门笔记
  • C++.OpenGL (12/64)光照贴图(Lightmaps)
  • 压测软件-Jmeter
  • Linux 常用命令语法总结
  • 青少年编程与数学 01-011 系统软件简介 02 UNIX操作系统
  • NLP学习路线图(三十):微调策略
  • leetcode刷题日记——1.组合总和
  • 关于单片机的基础知识(一)
  • Python训练营打卡Day45
  • Xilinx FPGA 重构Multiboot ICAPE2和ICAPE3使用
  • Redis专题-基础篇