springBoot的日志文件

这篇具有很好参考价值的文章主要介绍了springBoot的日志文件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一. 自定义日志打印

1. 获取日志对象 

2. 使用日志对象打印日志

3. 日志格式说明 

二. 日志级别 

1. 日志级别的分类和使用

2. 日志级别的设置

三. 日志持久化

 四. 更加简单的实现日志打印

五. Lombok的原理


日志是程序的重要组成部分,主要可以用来定位和排查问题。除此之外,还可以用来:

1. 记录用户的登录日志,方便分析用户是正常登录还是恶意破解;

2. 记录系统的操作日志,方便数据恢复和定位操作人;

3. 记录程序执行时间,方便优化程序和提供数据支持;

在 springBoot 中内置了日志框架:SLF4J+logback,这两者的关系就类似于JDBC 和 MySQL之间,SLF4J对于日志的多种实现方式做了统一。所以在程序中进行自定义日志输出的时候,也通常是借助于SLF4J框架来输出日志;

springBoot的日志文件,JavaEE进阶,spring boot,java,spring,日志文件

一. 自定义日志打印

1. 获取日志对象 

 1. 每个类都有自己的日志对象,所以习惯用 private 修饰;

 2. 为了方便调用,习惯用 static 修饰;

 3. 且该日志对象不希望被修改,习惯用 final 修饰;

 4. Logger 是一个接口,无法直接 new 对象,一般借助 LoggerFactory.getLogger 方法获取日志对象;

private static final Logger log = LoggerFactory.getLogger(类对象);

注意 Logger 对象要选择 slf4j 包下的!!! 

springBoot的日志文件,JavaEE进阶,spring boot,java,spring,日志文件

2. 使用日志对象打印日志

使用对应方法来打印对应层级的日志; 

        log.trace("i'm trace");     
        log.debug("i'm debug");    
        log.info("i'm info");
        log.warn("i'm warn");
        log.error("i'm error");

3. 日志格式说明 

springBoot的日志文件,JavaEE进阶,spring boot,java,spring,日志文件

二. 日志级别 

日志级别可以帮助我们筛选出重要的信息,可以通过控制日志级别,来让日志内容更加准确明了;

日志级别可以控制不同环境下,打印出不同的日志内容,例如在开发环境下,需要很多详细的信息,而生产环境下,为了保证性能,一般就会需要较少的日志,此时就可以提供日志级别来实现这个需求; 

1. 日志级别的分类和使用

trace:级别最低;

debug: 调试时候的关键信息打印;

info:默认的日志级别;

warn:警告,不影响使用;

error:错误信息;

fatal:致命的,因为代码异常导致程序退出执行;

springBoot的日志文件,JavaEE进阶,spring boot,java,spring,日志文件

级别越高,能接收的信息就越少,例如设置为 warn 级别的时候,此时就只能接受 warn,error,fatal 级别的日志了。

2. 日志级别的设置

日志级别的设置可以通过配置文件来配置;

# root 设置了默认级别
logging:
    level:
        root:error

也可以针对文件路径来另外设置,例如将 com.example.demo 路径下的日志级别设置为 trace:

logging:
    level:
        root:
        com:
            example:
                demo:trace

三. 日志持久化

所谓日志持久化,也就是将日志内容保存下来,因为在生产环境下,通常需要保存好日志文件,方面后续进行追溯;

同样是在配置文件中进行配置,指定日志文件的存储目录和文件名;

# 日志保存路径     绝对路径!
# 只设置name的话,此时路径就和项目的路径是一起的
# 也可以在 name 的基础上加上路径
logging:
  file:
#    path: D:\\test\\
#    name: springboot.log
    name: D:\\test\\springboot.log

 并且存储的 springboot.log日志文件是实时更新的。日志文件的最大容量是 10MB。

springBoot的日志文件,JavaEE进阶,spring boot,java,spring,日志文件

 四. 更加简单的实现日志打印

使用 @slf4j 注解,前提是要有 Lombok 框架支持; 

@slf4j 是一个类注解,表示给当前类中添加一个叫做 log 的日志对象(这是 lombok 提供的对象名),此处的 log 对象就是 slf4j 中提供的 Logger 对象;

@RestController
@Slf4j  
public class LoggerController {
    @RequestMapping("/log")
    public String sayHi(){
        log.info("我是 log 的 info");
        log.error("我是 log 的 error");
        return "hello3";
    }
}

springBoot的日志文件,JavaEE进阶,spring boot,java,spring,日志文件

五. Lombok的原理

此处再简单补充一下 Lombok 的一些原理知识:Lombok实在编译时期起作用的;

Lombok在程序中运行时起到的作用就是,使用注解代替,来快捷的实现一些语句。这点可以通过 target 目录来观察;target 为项目最终执行的代码; 

springBoot的日志文件,JavaEE进阶,spring boot,java,spring,日志文件

 在 target 中,注解 @slf4j ,就自动的转换为构造日志对象的语句了。springBoot的日志文件,JavaEE进阶,spring boot,java,spring,日志文件

 Lombok 还有很多注解是经常用到的:

1. @Getter:自动添加 getter 方法

2. @Setter:自动添加 setter 方法

3. @ToString:自动添加 toString 方法

组合注解:@Data:包括 @Getter + @Setter + @ToString + @EqualsAndHashCode + @RequiredArgsConstructor + @NoArgsConstructor文章来源地址https://www.toymoban.com/news/detail-643905.html

到了这里,关于springBoot的日志文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java EE 突击 9 - Spring Boot 日志文件

    这个专栏给大家介绍一下 Java 家族的核心产品 - SSM 框架 JavaEE 进阶专栏 Java 语言能走到现在 , 仍然屹立不衰的原因 , 有一部分就是因为 SSM 框架的存在 接下来 , 博主会带大家了解一下 Spring、Spring Boot、Spring MVC、MyBatis 相关知识点 并且带领大家进行环境的配置 , 让大家真正用好

    2024年02月13日
    浏览(48)
  • 【JavaEE & Spring】SpringBoot 日志

    为什么要学习日志 对于平常来说, 我们就在使⽤ System.out.print 来打印⽇志了 随着项⽬的复杂度提升, 我们对⽇志的打印也有了更⾼的需求, ⽽不仅仅是定位排查问题. 有时候我们需要将日志持久化, 进行对应的数据分析, 但是 System.out.print 不能很好的满⾜我们的需求, 我们就需要

    2024年01月25日
    浏览(36)
  • 【JavaEE进阶】SpringBoot 配置文件

    整个项目中所有重要的数据都是在配置⽂件中配置的,比如: 数据库的连接信息(包含⽤户名和密码的设置); 项⽬的启动端⼝; 第三⽅系统的调⽤秘钥等信息; ⽤于发现和定位问题的普通⽇志和异常⽇志等。 假如如果没有配置信息,那么 Spring Boot 项目就不能连接和操作数

    2024年02月13日
    浏览(45)
  • 【JavaEE】Spring Boot - 配置文件

    【JavaEE】Spring Boot 开发要点总结(2) 所有重要和必要的数据都是在配置文件中配置的 简洁明了,干净利落,修改方便,相比于xml,更有代码的感觉,功能用处也更多更被重视 例如: 数据库的连接时的需要的信息配置(用户名,url,密码) 项目的启动端口是什么(server.po

    2024年02月14日
    浏览(38)
  • 【JavaEE & Spring】SpringBoot 配置文件

    计算机上有数以千计的配置文件, 使用软件和硬件等都需要有配置文件,在C盘中存在; 配置文件主要是为了解决硬编码带来的问题,把可能发生改变的信息,放在一个集中的地方,当我们启动某个程序时,应用程序从配置文件中读取数据,并加载运行。 SpringBoot 支持并定义了

    2024年01月21日
    浏览(54)
  • 【Spring Boot】了解Spring Boot 的日志文件

    目录 一、日志的作用 二、日志文件的简单使用  1、Spring Boot中的默认日志 2、自定义日志打印 三、日志级别 1、日志级别分类  2、日志级别的设置 3、日志持久化 四、基于LomBok的日志输出 1、安装Lombok插件 2、使用Lombok添加日志(@slf4j) 3、使用Lombok添加getter和setter方法(@Da

    2024年02月13日
    浏览(41)
  • Spring Boot日志文件

    目录 前言🍭 一、日志的作用🍭 1、日志真实使用案例:🍉 二、日志怎么用🍭 1、自定义日志打印🍉 Ⅰ、在程序中得到日志对象🍓  常见的日志框架说明(了解)🍒 Ⅱ、使用日志对象打印日志 🍓 2、日志的级别🍉 Ⅰ、日志级别有什么用?🍓 Ⅱ、日志级别的分类与使用

    2024年01月18日
    浏览(42)
  • JavaEE进阶(6)SpringBoot 配置文件(作用、格式、properties配置文件说明、yml配置文件说明、验证码案例)

    接上次博客:JavaEE进阶(5)Spring IoCDI:入门、IoC介绍、IoC详解(两种主要IoC容器实现、IoC和DI对对象的管理、Bean存储、方法注解 @Bean)、DI详解:注入方式、总结-CSDN博客 目录 配置文件作用 SpringBoot配置文件  配置文件的格式 properties 配置文件说明 properties 基本语法 读取配置

    2024年01月23日
    浏览(63)
  • Spring Boot 配置文件和日志

    目录 配置文件格式 properties配置文件说明 1.properties基本语法 2.读取配置文件 3.properties缺点 yml配置文件说明 1.yml基本语法 2.配置不同数据类型 3.字符串特殊情况 4.配置对象 properties和yml对比 日志 日志的使用 日志级别 日志持久化 Lombok Lombok原理解释 Spring中配置文件有很重要的

    2024年01月19日
    浏览(57)
  • Spring Boot配置保存日志文件

    springboot日志配置: springboot默认日志是打印再console中的,不会保存在文件中。我们项目上线肯定要保存日志用于分析的。 一、使用xml配置日志保存(并不需要pom配置slf4j依赖,starter里面已经配置了依赖了) 1、在项目的resources目录下创建一个【logback-spring.xml】日志配置文件

    2024年02月11日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包