Spring Boot项目引入日志LogBack(Sif4j),将项目日志输出到文件中。

 

项目日志:

项目中常见的日志处理:

1、记录到日志到数据库

2、使用日志框架 记录文件中

3、ELK平台 日志采集(大数据)

4、云解决方案

项目中引入日志最主要的原因是:项目上线之后,会有很多未知因素,但是线上是不可以DEBUG的,所以我们就需要来查看日志,来确定代码具体执行到哪个模块的时候报错了。

日志级别: ERROR , WARN , INFO , DEBUG ,或 TRACE

 

引入jar包

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
            <version>2.1.6.RELEASE</version>
        </dependency>

 在application.yml或者application.properties中配置日志文件输出的路径

因为日志默认是输出在控制台,所以我们需要配置一下

logging:
  file: mps.log

配置过后,我们启动Boot项目的开关类,从下图可以看到临时文件中多了一个msg.log,文件中有一些相关的日志信息

我们可以看到文件中的日志,但是我们也发现,log文件中记录的日志太多了,很多都不是我们需要需要的信息,我们可以新建一个xml文件来进行配置。需要输入的日志类型,在这里我们直接全部输出

在spring 的官网中,我们可以看到spring加载的日志xml文件命名

          这里面我们命名有错误的话,就会使用spring 的默认配置,即配置文件不生效,将日志打印到控制台,这里我们使用swagger触发一下方法,可以看到日志打印到了控制台中。

      我们开发项目的时候,一般都会在service层中记录日志,单我这里使用的是mybatis-plus,所以我们直接在controller层进行日志的记录。

首先我们需要在类中拿到声明一个属性,方便我们对类进行日志的记录 

 注:logger对象为  org.slf4j.Logger; 下的,原来因为倒错包而挠头,希望大家注意下。

比如,我们在添加操作和更新操作中分别添加info和error两种类型的日志

我们使用swager进行测试后,发现日志打印到了控制台中

因我我们application.xml中配置的

logging:
  file: msg.log

所以,我们来查看msg.log

我们可以看到,我们进行记录的日志信息,已经记录到msg.log中,这样我们的项目在上线的时候,不会因为线上不能debug而造成不知道bug原因在哪里的情况,我们可以在服务器上直接通过log日志进行查看错误。

在线上之后,我们进行相关的测试之后,我们发现log文件中会多处日志信息。我们这里直接在根目录进行了日志文件的输出,如果想改变文件输出的位置,那么可以配置 logging-path: 文件的路径 ,

需要注意的是:在linux环境下,是没有盘符的。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值