Java实战04之 springboot 整合logback 打印日志,分文件

目录

前言:

一、pom.xml配置

二、application.yml 配置

三、logback.xml 配置

四、测试类

五、常见问题:

1、mybatis 的sql 日志无法打印

2、mybatis 打印了sql的结果集明细

六、日志按照业务类别打印不同文件

1、logback.xml 

2、测试类 

3、启动项目

4、注解 + logger.getname 一起用  


前言:

接着上面实战03讲,这次我们采用springboot自带的日志打印方式-logback 来打印日志

一、pom.xml配置

因为是springboot自带的日志方式,所以不需要添加依赖

二、application.yml 配置

因为是springboot自带的日志方式,所以不需要添加logback.xml 路径,当然如果你非要加也可以

logging:
  config: classpath:logback.xml

三、logback.xml 配置


    
    
    
    
    
        
            
            <!--            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n-->
            [%d{yyyy-MM-dd HH:mm:ss.SSS}] [%p] [%t] [%-40.40logger{39}] : %m%n
        
    

    
    
        ${LOG_HOME}/all-logger.log
        
            
            ${LOG_HOME}/${all-logger}.log.%d{yyyy-MM-dd}.%i
            
            30
            
                250MB
            
        
        
            
            <!--            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n-->
            [%d{yyyy-MM-dd HH:mm:ss.SSS}] [%p] [%t] [%-40.40logger{39}] : %m%n
            utf8
        
    

    

    
    
        
        
    

四、测试类

因为自带的日志方式,所以可以直接使用注解,@slf4j, 这样就方便很多

Java实战04之 springboot 整合logback 打印日志,分文件

启动项目

控制台:

Java实战04之 springboot 整合logback 打印日志,分文件

 日志:

Java实战04之 springboot 整合logback 打印日志,分文件

五、常见问题:

1、mybatis 的sql 日志无法打印

那是因为确实打印的指定的包,因为我们需要打印所有包的sql,所以直接配置一个最大的包


2、mybatis 打印了sql的结果集明细

那是因为日志基本写成了dubug

    
    

Java实战04之 springboot 整合logback 打印日志,分文件

这样就会打印结果集的全部明细,日志量会异常庞大,一般我们只需要打印INFO级别就可以了。

六、日志按照业务类别打印不同文件

1、logback.xml 


    
    
    
    
        
            
            <!--            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n-->
            [%d{yyyy-MM-dd HH:mm:ss.SSS}] [%p] [%t] [%-40.40logger{39}] : %m%n
        
    

    
    
        ${LOG_HOME}/alllogger.log
        
            
            ${LOG_HOME}/alllogger.log.%d{yyyy-MM-dd}.%i
            
            30
            
                250MB
            
        
        
            
            <!--            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n-->
            [%d{yyyy-MM-dd HH:mm:ss.SSS}] [%p] [%t] [%-40.40logger{39}] : %m%n
            utf8
        
    

    
        ${LOG_HOME}/taskaction.log
        
            
            ${LOG_HOME}/taskaction.log.%d{yyyy-MM-dd}.%i
            
            30
            
                250MB
            
        
        
            
            <!--            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n-->
            [%d{yyyy-MM-dd HH:mm:ss.SSS}] [%p] [%t] [%-40.40logger{39}] : %m%n
            utf8
        
    

    
    

    
    
        
        
    

    
    
        
    

    
        
    

ALLACTION 打印默认的日志, 
TASKACTION 打印任务类型的日志

2、测试类 

Java实战04之 springboot 整合logback 打印日志,分文件

直接通过logger name 来打印自定义的业务日志, logger的配置就是LoggerFactory需要的模板,只有配置了工厂获取才会生效。

3、启动项目

控制台

Java实战04之 springboot 整合logback 打印日志,分文件

 alllogger 文件

Java实战04之 springboot 整合logback 打印日志,分文件

taskaction 文件

Java实战04之 springboot 整合logback 打印日志,分文件

 

可以看到控制台并没有打印 自定义的业务日志,如果要打印,需要在自定义工厂里面加上控制台输出。



    
    



    
    

再次启动项目

Java实战04之 springboot 整合logback 打印日志,分文件

4、注解 + logger.getname 一起用  

因为注解方式打印的就是默认的日志文件,但是我们如果还要打印任务日志怎么办呢,这时就可以结合使用。

测试类

Java实战04之 springboot 整合logback 打印日志,分文件

启动项目。

控制台

Java实战04之 springboot 整合logback 打印日志,分文件

 allaction默认日志

Java实战04之 springboot 整合logback 打印日志,分文件

taskaction

 Java实战04之 springboot 整合logback 打印日志,分文件

 

以上就是最全的logback 打印日志的方式了。

如果觉得对你有帮助的话欢迎点赞关注哦

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://www.net2asp.com/802499075d.html