广告
返回顶部
首页 > 资讯 > 精选 >如何掌握SpringBoot日志文件
  • 893
分享到

如何掌握SpringBoot日志文件

2023-07-05 08:07:08 893人浏览 薄情痞子
摘要

这篇“如何掌握SpringBoot日志文件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何掌握springBoot日志文件

这篇“如何掌握SpringBoot日志文件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何掌握springBoot日志文件”文章吧。

    SpringBoot日志文件

    1. 日志有什么用

    日志是程序的重要组成部分,想象一下,如果程序报错了,不让你打开控制台看日志,那么你能找到报错的原因吗。

    日志对于我们来说,最主要的用途就是排除和定位问题。除了发现和定位问题之外,我们还可以通过日志实现以下功能:

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

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

    • 记录程序的执行时间,方便以后优化程序提供数据支持

    2. 日志怎么用

    Spring Boot项目在启动的时候默认就会有日志的输出,如下图:

    如何掌握SpringBoot日志文件

    通过上述信息我们可以发现:

    • Spring Boot内置了日志框架

    • 默认情况下,输出的日志并不是开发者定义和打印的,那么开发者怎么在程序中定义打印日志?

    • 日志默认是打印在控制台上,而控制台的日志是不能被保存的, 如何将日志永久的保存下来?

    3. 自定义日志打印

    开发者自定义打印日志的实现步骤:

    • 在程序中得到日志

    • 使用日志对象的相关语法输出要打印的内容

    3.1 在程序中得到日志对象
    private static final Logger log = LoggerFactory.getLogger(UserController.class);

    日志工厂需要将每个类的类型传进去,这样我们才能知道日志的归属类,才能更方便更直观的定位到问题

    注意:logger对象属于org.slf4j包下的,不要导错了

    如何掌握SpringBoot日志文件

    3.2 使用日志对象打印日志

    日志对象的打印方法有很多种,我们可以使用info方法来输出日志,

    @Controller@ResponseBodypublic class UserController {    private static final Logger log = LoggerFactory.getLogger(UserController.class);    @RequestMapping("/sayhi")    public void sayHi() {        log.trace("trace");        log.debug("debug");        log.info("info");        log.warn("warn");        log.error("error");    }}

    如何掌握SpringBoot日志文件

    4. 日志级别

    4.1 日志级别有什么用?
    • 日志级别可以帮你筛选出重要的信息,比如设置日志级别为error,那么就可以只看到程序的报错日志了,对于普通的调试日志和业务日志就可以忽略了。从而节省开发者筛选的时间

    • 日志级别可以控制不同环境下,一个程序是否需要打印日志,如开发环境我们需要很详细的信息,而生产环境为了保持性能和安全性就会输出少量的日志,而通过日志级别可以实现此类需求

    4.2 日志级别的分类与使用

    日志级别分为:

    • trace: 微量,少许的意思,级别最低

    • debug:需要调试时候的关键信息打印

    • info:普通的打印信息(默认日志级别)

    • warn:警告:不影响使用,但需要注意的问题

    • error:错误信息,级别较高的错误日志信息

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

    日志级别的顺序:

    如何掌握SpringBoot日志文件

    越往上,接收到的信息就越少,如设置了warn就只能接收到warn及其上面的级别

    日志级别设置

    logging:  level:    root: error

    默认日志输出级别

    清除掉配置文件当中的日志设置,观察控制台输出的日志级别

    得到结论,日志输出级别默认是info

    当存在局部日志级别和全局日志级别设置,那么当访问局部日志时,使用的是局部日志级别。也就是局部日志优先级高于全局日志的优先级

    5. 日志持久化

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

    想要将日至持久化,只需要在配置文件中指定日志的存储目录或者是指定日志保存文件名,Spring Boot就会将控制台的日志写到相应的目录或文件下

    配置日志文件的保存路径:

    logging:  file:    path: D:\rizhi

    保存的路径,当中包含转义字符方面的设置我们可以使用这个/来作为分割符。

    如果坚持使用windows下的分割符,我们需要使用\转义字符来转义一下

    配置日志文件的文件名:

    logging:  file:    name: D:/rizhi/logger/spring.log

    6. 更简单的日志输出–lombok

    每次使用LoggerFactory.getLogger很繁琐,且每个类都添加一遍,也很麻烦。这里的lombok是一种更好的日志输出方式

    • 添加lombok框架支持

    • 使用@slf4j注解输出日志

    6.1 添加 lombok 依赖

    首先要安装一个插件

    如何掌握SpringBoot日志文件

    然后再pom.xml页面右键、

    如何掌握SpringBoot日志文件

    如何掌握SpringBoot日志文件

    如何掌握SpringBoot日志文件

    最后重新添加依赖就可以了

    如何掌握SpringBoot日志文件

    6.2 输出日志

    使用@Slf4j注解,在程序中使用log对象即可输入日志并且只能使用log对象才能输出,这是lombok提供的对象名

    6.3 lombok原理解释

    lombok 能够打印⽇志的密码就在 target ⽬录⾥⾯,target 为项⽬最终执⾏的代码,查看 target ⽬录我们可以发现:

    如何掌握SpringBoot日志文件

    这里的@Slf4j注解变成了一个对象。

    下面是java程序的运行原理:

    如何掌握SpringBoot日志文件

    6.4 lombok更多注解说明

    基本注解

    注解作用
    @Getter自动添加get方法
    @Setter自动添加set方法
    @ToString自动添加toString方法
    @EqualsAndHashCode自动添加equals和hasCode方法
    @NoArgsConstructor自动添加无参构造方法
    @AllArgsConstructor自动添加全属性构造方法,顺序按照属性的定义顺序
    @NonNull属性不能为null
    @RequiredArgsConstructor自动添加必须属性的构造方法,final + @NonNull的属性为需

    组合注解:

    注解作用
    @Data@Getter+@Setter+EqualsAndHashCode+@RequiredArgsConstructor+@NoArgsConstructor

    日志注解

    注解作用
    @Slf4j添加一个名为log的对象

    以上就是关于“如何掌握SpringBoot日志文件”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网精选频道。

    --结束END--

    本文标题: 如何掌握SpringBoot日志文件

    本文链接: https://www.lsjlt.com/news/350705.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • 如何掌握SpringBoot日志文件
      这篇“如何掌握SpringBoot日志文件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何掌握SpringBoot日志文件...
      99+
      2023-07-05
    • 一文掌握Spring Boot 日志文件
      目录SpringBoot日志文件1. 日志有什么用2. 日志怎么用3. 自定义日志打印3.1 在程序中得到日志对象3.2 使用日志对象打印日志4. 日志级别4.1 日志级别有什么用?...
      99+
      2023-03-06
      Spring Boot 日志文件 Spring Boot 日志
    • PHP日志文件同步:您需要掌握的技能。
      PHP是一种流行的脚本语言,用于Web开发。在PHP应用程序中,日志文件是非常重要的组成部分。它们记录了应用程序的活动和错误,有助于开发人员了解应用程序的运行情况。然而,当应用程序运行在多个服务器上时,日志文件同步可能会成为一个挑战。在本...
      99+
      2023-07-09
      日志 文件 同步
    • SpringBoot详细讲解日志文件
      目录1 日志的功能是什么2 如何自定义日志打印2.1 在程序中获取日志对象2.2 调用日志对象打印日志2.3 查看日志打印的结果3 日志的级别3.1 日志级别的分类3.2 日志级别的...
      99+
      2022-11-13
    • springboot下mybatis-plus如何打印sql日志和参数到日志文件
      最近在使用springboot过程中用到了mybatis-plus ,springboot版本是2.3.1.RELEASE,mybatis-plus 版本3.2.0。 ...
      99+
      2022-11-13
    • 一步教你掌握定期远程备份MYSQL binlog日志文件方法
      本篇文章给大家主要讲的是关于定期远程备份MYSQL binlog日志文件方法的内容,感兴趣的话就一起来看看这篇文章吧,相信看完定期远程备份MYSQL binlog日志文件方法对大家多少有点参考价值吧。&nb...
      99+
      2022-10-18
    • SpringBoot(项目创建使用+配置文件+日志文件)
      目录 1. Spring Boot 项目创建 2. 写一个 Hello World 并运行 3. 配置文件的作用及格式 4. properties 配置文件的基本语法  5. 读取配置文件 6. yml 配置文件说明 7. properti...
      99+
      2023-08-31
      spring boot java spring
    • CentOS7日志文件及journalctl日志如何查看
      这篇文章主要介绍了CentOS7日志文件及journalctl日志如何查看的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CentOS7日志文件及journalctl日志如何查看文章都会有所收获,下面我们一起来看...
      99+
      2023-07-05
    • springboot下mybatis-plus怎么打印sql日志和参数到日志文件
      本篇内容主要讲解“springboot下mybatis-plus怎么打印sql日志和参数到日志文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“springboot下mybatis-plus怎么...
      99+
      2023-06-29
    • Springboot之日志、配置文件、接口数据如何脱敏
      目录一、前言二、配置文件如何脱敏?1. 添加依赖2. 配置秘钥3. 生成加密后的数据4. 将加密后的密文写入配置5. 总结三、接口返回数据如何脱敏?1. 自定义一个Jackson注解...
      99+
      2022-11-12
    • SpringBoot项目创建使用+配置文件+日志文件详解
      目录1. Spring Boot 项目创建2. 写一个 Hello World 并运行3. 配置文件的作用及格式4. properties 配置文件的基本语法 5. 读取配...
      99+
      2023-02-09
      SpringBoot项目创建使用 SpringBoot配置文件 SpringBoot日志文件
    • mongodb如何清理日志文件
      mongodb清理日志文件的方法:1、使用mongodb数据库命令“db.runCommand({logRotate:1})”登录到mongod和mongos实例中;2、然后使用“cat /dev/null > [文件名]”系统命令清...
      99+
      2022-10-22
    • python如何处理日志文件
      使用python处理日志文件的方法:1.新建python项目;2.使用open()函数打开日志文件;3.使用readlines()方法遍历日志;4.使用open()函数新建文件,在通过write()方法将数据输出到文件;具体步骤如下:首先,...
      99+
      2022-10-16
    • centos如何查看日志文件
      centos中查看日志文件的方法:1、打开centos终端;2、通过“cat 文件名”或“tail -f 文件名”命令查看日志文件即可。具体操作步骤:在centos系统桌面中使用快捷键【Ctrl+Alt+T】打开终端命令行模式。在cento...
      99+
      2022-10-05
    • redis如何配置日志文件
      redis配置日志文件的方法:打开redis的配置文件。找到logfile或直接搜logfile " "。将路径填入logfile后面的引号内,例如:logfile "d:/redislog/redis.log...
      99+
      2022-10-09
    • 如何清理redis日志文件
      要清理Redis日志文件,可以按照以下步骤进行操作:1. 停止Redis服务:可以使用`redis-cli`命令连接到Redis,执...
      99+
      2023-09-11
      redis
    • win10日志文件如何删除
      这篇文章主要讲解了“win10日志文件如何删除”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“win10日志文件如何删除”吧!win10日志文件删除方法:找到“c盘” 右击c盘选择“属性” 点...
      99+
      2023-07-01
    • springboot如何去除debug日志
      目录springboot去除控制台打印的debug日志1.创建logback-spring.xml文件2.给application.properties文件无法控制springboo...
      99+
      2022-11-13
    • SpringBoot中通过AOP整合日志文件的实现
      目录1.导入相关的依赖 2.log4j2 日志文件 3.dao层的接口以及实现类 4.Service层业务实现类 5.Controller层接口控制类 6.编写业务类增强类,加入一个...
      99+
      2022-11-12
    • 如何掌握Mycat中间件
      本篇内容主要讲解“如何掌握Mycat中间件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何掌握Mycat中间件”吧!分布式数据存储与MycatMycat架构介...
      99+
      2022-10-19
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作