SpringBoot使用自带的日志框架(开箱即用,同时输出到文件与控制台)

在SpringBoot内部中,默认就集成了LogBack的日志依赖,所以我们其实在实际开发中不需要直接添加该依赖。
你会发现spring-boot-starter其中包含了
spring-boot-starter-logging,Spring Boot为我们提供了很多默认的日志配置,所以,只要将spring-boot-starter-logging作为依赖加入到当前应用的classpath,则“开箱即用”。

本项目以springboot 2.7.5为例

目录

1.引入依赖

2.logback的日志等级

3.logback日志配置文件

4.如何在代码中使用日志输出

5.结果


1.引入依赖

    
        org.springframework.boot
        spring-boot-starter-parent
        2.7.5
         
    

2.logback的日志等级

日志级别从低到高分为:
TRACE < DEBUG < INFO < WARN < ERROR < FATAL

3.logback日志配置文件

放在resources下即可



    logback

    
    
    
    

    
    
    

    
    
        
        
            
                ${logging.pattern.console}
            
        
    

    
    
        true
        
        
            
            
                logs/%d{yyyy-MM}/%d{yyyy-MM-dd}.log
            
            
            365
        
        
        
            ERROR
        
        
        
            
                ${logging.pattern.file}
            
        
    

    
    
    
    
    
    
    
    

    
        
        
    


  • contextName

每个logger都关联到logger上下文,默认上下文名称为“default”。但可以使用contextName标签设置成其他名字,用于区分不同应用程序的记录。

  • property

用来定义变量值的标签,property标签有两个属性,name和value;其中name的值是变量的名称,value的值时变量定义的值。通过property定义的值会被插入到logger上下文中。定义变量后,可以使“${name}”来使用变量。如上面的xml所示。

  • logger

用来设置某一个包或者具体的某一个类的日志打印级别以及指定appender。

  • root

根logger,也是一种logger,且只有一个level属性。

  • appender

负责日志的组件。

4.如何在代码中使用日志输出

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class Test {
    private static final Logger LOGGER = LoggerFactory.getLogger(Test .class);
    public static void main(String[] args) {
   
            LOGGER.info("这是一条log数据"+i);
        
       try{
       } catch (Exception e) {
           LOGGER.info("错误信息:" + e.getMessage());
    }
    }
}

当然,如果有引入lombok的话,可以更简单

引入lombok

        
            org.projectlombok
            lombok
        

@Slf4j
public class Test{
 
 
    public String getInfo() {
        log.info("日志信息");
    }
}

5.结果

SpringBoot使用自带的日志框架(开箱即用,同时输出到文件与控制台)_第1张图片

你可能感兴趣的:(spring,boot,java,spring)