Spring Boot整合日志

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 市面上常见的日志框架有很多,它们可以被分为两类日志门面(日志抽象层)和日志实现通常情况下,日志由一个日志门面与一个日志实现组合搭建而成,SpringBoot选用SLF4J+Logback的组合来搭建日志系统。SLF4J是目前市面上最流行的日志门面,使用Slf4j可以很灵活的使用占位符进行参数占位,简化代码,拥有更好的可读性。Lombok简化了实体类中大量的getter/setter、toString、hashCode、equals等方法在运行过程中,Lombok自动生成相应方法。......

1.日志框架概述

  • 市面上常见的日志框架有很多,它们可以被分为两类:日志门面(日志抽象层)和日志实现
  • 通常情况下,日志由一个日志门面与一个日志实现组合搭建而成,Spring Boot 选用 SLF4J + Logback 的组合来搭建日志系统。
  • SLF4J 是目前市面上最流行的日志门面,使用 Slf4j 可以很灵活的使用占位符进行参数占位,简化代码,拥有更好的可读性。
  • Logback 是 Slf4j 的原生实现框架,它与 Log4j 出自一个人之手,但拥有比 log4j 更多的优点、特性和更做强的性能,现在基本都用来代替 log4j 成为主流。
  • 在这里插入图片描述

2.slf4j(Spring Boot底层默认整合slf4j)

1️⃣slf4j(Simple Logging Facade for java)中文意思是简单日志门面,是获取日志的标标准接口。
2️⃣slf4j的官网地址:https://www.slf4j.org/
3️⃣slf4j的日志级别分为:trace<debug<info<warn<error, 默认级别是info
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.日志全局配置

3.1配置日志级别(默认是info)

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

3.2配置日志的输出格式

在这里插入图片描述

在这里插入图片描述

3.3配置日志文件的输出位置

在这里插入图片描述
我们可以看到在D盘确实可以找到对应的日志文件的输出位置,而且日志信息是追加的在这里插入图片描述

4.logback配置文件(Spring Boot日志的实现层默认使用logback)

这里简单了解一下就可以
除了全局配置文件配置日志以外,我们也可以单独配置日志文件,比如logback的配置如下:

4.1全局配置文件中,设置logback配置文件路径

# 激活开发环境
spring.profiles.active=dev
# 设置日志配置文件位置
logging.config=classpath:logback-config.xml

4.2logback配置

logback的使用

5.整合Lombok

## 5.1概述

  • Lombok简化了实体类中大量的getter/setter、toString、hashCode、equals等方法
  • 在运行过程中,Lombok自动生成相应方法
  • Lombok通过注解的方法,注入了日志对象log
  • 官网地址:https://www.projectlombok.org/

## 5.2插件安装
在这里插入图片描述

5.3Lombok的使用

在创建Spring Boot项目的时候,勾选Lombok
在这里插入图片描述
然后构建项目的时候,会自动在pom.xml中添加lombok依赖
在这里插入图片描述
在这里插入图片描述
如果我们相要使用有参构造的话,这个时候是不可以的,因为没有提供对应的有参构造方法,为了解决这个情况,我们可以使用注解

@Data
@AllArgsConstructor  //帮我们生成有参构造
@Component
public class Book {
    private String name;
    private Double price;
}

但是,我们也可以发现,使用@AllArgsConstructor提供了有参构造后,无参构造就不会创建,但是有时候我们是需要使用无参构造,比如说实体类在spring容器中的自动注入就必须提供无参构造
@NoArgsConstructor可以提供无参构造
@AllArgsConstructor可以提供有参构造
在这里插入图片描述
在这里插入图片描述

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
3月前
|
Java 中间件
SpringBoot入门(6)- 添加Logback日志
SpringBoot入门(6)- 添加Logback日志
136 5
|
27天前
|
XML Java 应用服务中间件
Spring Boot 两种部署到服务器的方式
本文介绍了Spring Boot项目的两种部署方式:jar包和war包。Jar包方式使用内置Tomcat,只需配置JDK 1.8及以上环境,通过`nohup java -jar`命令后台运行,并开放服务器端口即可访问。War包则需将项目打包后放入外部Tomcat的webapps目录,修改启动类继承`SpringBootServletInitializer`并调整pom.xml中的打包类型为war,最后启动Tomcat访问应用。两者各有优劣,jar包更简单便捷,而war包适合传统部署场景。需要注意的是,war包部署时,内置Tomcat的端口配置不会生效。
202 17
Spring Boot 两种部署到服务器的方式
|
1月前
|
开发框架 运维 监控
Spring Boot中的日志框架选择
在Spring Boot开发中,日志管理至关重要。常见的日志框架有Logback、Log4j2、Java Util Logging和Slf4j。选择合适的日志框架需考虑性能、灵活性、社区支持及集成配置。本文以Logback为例,演示了如何记录不同级别的日志消息,并强调合理配置日志框架对提升系统可靠性和开发效率的重要性。
|
1月前
|
存储 安全 Java
Spring Boot 3 集成Spring AOP实现系统日志记录
本文介绍了如何在Spring Boot 3中集成Spring AOP实现系统日志记录功能。通过定义`SysLog`注解和配置相应的AOP切面,可以在方法执行前后自动记录日志信息,包括操作的开始时间、结束时间、请求参数、返回结果、异常信息等,并将这些信息保存到数据库中。此外,还使用了`ThreadLocal`变量来存储每个线程独立的日志数据,确保线程安全。文中还展示了项目实战中的部分代码片段,以及基于Spring Boot 3 + Vue 3构建的快速开发框架的简介与内置功能列表。此框架结合了当前主流技术栈,提供了用户管理、权限控制、接口文档自动生成等多项实用特性。
81 8
|
3月前
|
Java 中间件
SpringBoot入门(6)- 添加Logback日志
SpringBoot入门(6)- 添加Logback日志
73 1
|
3月前
|
存储 运维 安全
Spring运维之boot项目多环境(yaml 多文件 proerties)及分组管理与开发控制
通过以上措施,可以保证Spring Boot项目的配置管理在专业水准上,并且易于维护和管理,符合搜索引擎收录标准。
79 2
|
4月前
|
SQL JSON Java
mybatis使用三:springboot整合mybatis,使用PageHelper 进行分页操作,并整合swagger2。使用正规的开发模式:定义统一的数据返回格式和请求模块
这篇文章介绍了如何在Spring Boot项目中整合MyBatis和PageHelper进行分页操作,并且集成Swagger2来生成API文档,同时定义了统一的数据返回格式和请求模块。
138 1
mybatis使用三:springboot整合mybatis,使用PageHelper 进行分页操作,并整合swagger2。使用正规的开发模式:定义统一的数据返回格式和请求模块
|
3月前
|
JSON Java 数据库
SpringBoot项目使用AOP及自定义注解保存操作日志
SpringBoot项目使用AOP及自定义注解保存操作日志
76 1
|
4月前
|
Java Maven Spring
SpringBoot日志整合
SpringBoot日志整合
47 2
|
4月前
|
数据采集 监控 Java
SpringBoot日志全方位超详细手把手教程,零基础可学习 日志如何配置及SLF4J的使用......
本文是关于SpringBoot日志的详细教程,涵盖日志的定义、用途、SLF4J框架的使用、日志级别、持久化、文件分割及格式配置等内容。
300 0
SpringBoot日志全方位超详细手把手教程,零基础可学习 日志如何配置及SLF4J的使用......