logback-spring.xml配置文件的使用


logback-spring.xml配置文件的使用

当我们使用Slf4j框架记录日志时,会用到logback.xml和logback-spring.xml,这里主要讲一下logbackback-spring.xml配置文件

logback-spring.xml的依赖

logback-spring.xml的依赖在spring-boot-starter中就有不需要添加额外的依赖,正因如此只有在Spring应用程序运行的时候才生效,需要在启动类中添加@SpringBootApplication注解。

logback-spring.xml的存放位置

如果是作为一个springboot项目,一般存放在

src/main/resources/logback-spring.xml

但有的项目为了打包会在项目路径下新建一个路径存放

rpm/config/logback-spring.xml

此时打包,会优先读取该路径下的配置文件,具体配置文件优先级如下:

1.file: ./config/
2.file: ./
3.classpath:./config
4.classpath:./
./表示当前路径
file表示项目路径:/
classpath表示资源路径:src/main/resources/

如果是在linux运行的服务,一般是读取该服务文件夹下的配置文件

xx-service/config/logback-spring.xml

具体实例

application-prod.yml

logging:
	config: classpath:log/logback-spring.xml

logback-spring.xml

<?xml version="1.0" encoding="UTF-8"?>






    logback-test

    
    
    

    
    
    
    
    
    
    

    
    
    
        
        
            debug
        
        
        
            ${CONSOLE_LOG_PATTERN}
            
            UTF-8
        
    

    
    
    
        
        ${log.path}/debug.log
        
        
            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
            UTF-8 
        
        
        
            
            ${log.path}/debug-%d{yyyy-MM-dd}.%i.log
            
                100MB
            
            
            15
	    
	    10GB
        
        
        
            debug
            ACCEPT
            DENY
        
    

    
    
        
        ${log.path}/info.log
        
        
            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
            UTF-8
        
        
        
            
            ${log.path}/info-%d{yyyy-MM-dd}.%i.log
            
                100MB
            
            
            15
        
        
        
            info
            ACCEPT
            DENY
        
    

    
    
        
        ${log.path}/warn.log
        
        
            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
            UTF-8 
        
        
        
            ${log.path}/warn-%d{yyyy-MM-dd}.%i.log
            
                100MB
            
            
            15
        
        
	
        
            warn
	    
            ACCEPT
	    
            DENY
        
    

    
    
        
        ${log.path}/error.log
        
        
            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
            UTF-8 
        
        
        
            ${log.path}/error-%d{yyyy-MM-dd}.%i.log
            
                100MB
            
            
            15
        
        
        
            ERROR
            ACCEPT
            DENY
        
    

    
    
        
        ${log.path}/all.log
        
        
            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
            UTF-8 
        
        
        
            ${log.path}/all-%d{yyyy-MM-dd}.%i.log
            
                100MB
            
            
            15
        
        
        
            DEBUG
	    
            DENY
	    
            ACCEPT
        
    

    

    

    
    
	
        
            
            
            
            
            
            
        
         
    

    
        
            
            
            
            
            
            
        
         
    

    
        
            
            
            
            
            
            
        
         
         
    


参考网址

官方文档:https://logback.qos.ch/documentation.html