springboot如何使用logback-spring配置日志格式,并分环境配置

配置不生效的解决办法

注意:如果配置不生效,则说明spring优先加载了其他配置:

解决办法:

  1. 添加启动参数 -Dlogging.config=classpath:logback-spring.xml
  2. 修改名字为 logback.xml, SpringBoot首先去查找标准的日志配置文件,如果找不到在去找拼接Spring的配置的文件, 标准文件名: "logback-test.groovy", "logback-test.xml", "logback.groovy","logback.xml" 等
  3. 排除 第三方jar包中的日志配置

springboot中使用这个LoggingApplicationListener类进行初始化,具体流程可查源码

logback-spring结尾的可以使用springboot的分环境注入特性:

直接贴代码,放到resource下面就行了:

springboot如何使用logback-spring配置日志格式,并分环境配置_第1张图片



    
    
        
    
    
    
        
    
    
    
        
        
            
            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
            
            UTF-8
        
    
    
    
        
        ${LOG_HOME}/timeFile/out.log
        
        
            
            ${LOG_HOME}/timeFile/info.%d{yyyy-MM-dd}.%i.log
            
            30
            
            
                10MB
            
        
        
        
            
            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
            
            UTF-8
        
    
    
    
        
        
        
    
    
    



     
     
        
    

Springboot项目下的logback.xml

直接上模板,其中有注释,在现有的项目里拷出来的。


    
    
    
    
        
            %d %p (%file:%line\)- %m%n
            UTF-8
        
    
    
    
    
	
    
        
        ${LOG_HOME}/mysql.log
        
        
            
                %d %p (%file:%line\)- %m%n
            
            UTF-8
        
        
        
            ${LOG_HOME}/mysql.log.%d.%i
            
                
                64 MB
            
        
    
	
    
        
        ${LOG_HOME}/mysql.log
        
        
            
                %d %p (%file:%line\)- %m%n
            
            UTF-8
        
        
        
            ${LOG_HOME}/mysql.log.%d.%i
            
                
                64 MB
            
        
    
	
    
        
    
	
    
        
        
    
    
    

在项目中使用时:

Logger logger = LoggerFactory.getLogger(所在类名.class);

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

你可能感兴趣的:(springboot如何使用logback-spring配置日志格式,并分环境配置)