SpringBoot中Log4j2的使用笔记

本文是本人在SpringBoot中使用Log4j2的笔记,若有误还请指正。
本文目录
1、依赖配置
2、Log4j2配置
3、报错处理
4、使用


1、添加依赖,并去除默认的log依赖


        
            org.springframework.boot
            spring-boot-starter-test
            test
            
                  
                  
                    org.springframework.boot  
                    spring-boot-starter-logging  
                  
                
                
                    logback-classic
                    ch.qos.logback
                
                
             
        
        
        
            org.springframework.boot
            spring-boot-starter-web
        

          
         
            org.springframework.boot  
            spring-boot-starter-log4j2  
        
        
    

因为可能存在很多个依赖包含logging这个包,如果存在的话都得添加去除默认的logging,不然log4j2不会生效,因此可以使用全局去除配置,这样就不用每个依赖都单独去除了

推荐全局去除

            org.springframework.boot
            logback-classic
            
                
                    *
                    *
                
            
        

              
            org.springframework.boot
            spring-boot-starter-logging
            
                
                    *
                    *
                
            
        

2、Log4j2配置

在resources文件夹添加文件log4j2.xml内容如下







    
        
        
        
        
        
        
        
        
        
        
    
    
    
    
    
        
        
            
            
        
        
        
        
            
            
        
        
        
        
            
                
                
                
            
             
            
            
                
                
            
            
            
        
        
        
            
                
                
            
            
            
                
                
            
        
 
        
            
            
            
                
                
            
        
 
    
    
    
    
        
        
        
            
            
        
        
            
            
            
            
            
        
    
 

3、报错处理

1)假如出现如下提示,则说明两个日志包有冲突,删除其中一个即可。
例如进到文件夹C:/Users/Administrator/.m2/repository/org/apache/logging/log4j/log4j-slf4j-impl/2.10.0,将log4j-slf4j-impl-2.10.0.jar删除

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/Users/Administrator/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/Users/Administrator/.m2/repository/org/apache/logging/log4j/log4j-slf4j-impl/2.10.0/log4j-slf4j-impl-2.10.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [ch.qos.logback.classic.util.ContextSelectorStaticBinder]

2)当 log4j2 不生效,需要排查其他包是否也有使用log,可参考springboot2.0.4整合log4j2不生效,或者使用上文提到的全局去除。

4、使用

final Logger logger = LoggerFactory.getLogger(this.getClass());

logger.trace("I am trace log.");
        logger.debug("I am debug log.");
        logger.warn("I am warn log.");
        logger.error("I am error log.");

你可能感兴趣的:(SpringBoot中Log4j2的使用笔记)