springBoot配置log4j2实践

参考文章:

springBoot完美配置log4j2

https://blog.csdn.net/sdlyjzh/article/details/79416607

springcloud--日志链路追踪之log4j2

Java日志体系(log4j2)

--------------------------------------------------------------------------

传统的log4j,同步打印日志,同时输出许多条日志记录,会采用抢占式,谁先得到输出机会,先打印某条日志。

log4j2,异步打印日志,业务线程将日志输出存放到一个无锁化环形队列(RingBuffer),log4j2的异步线程会从该队列中读取日志,并进行持久化。该环形队列,可以设置缓冲区大小,以及队列满了后,将debug/info/error/trace中某个级别的日志进行剔除。

多样的日志系统可以通过

  1. 添加适当的日志框架库到classpath
  2. 适当的配置配置文件加入到classpath的根目录 或者 其他的本地目录, 使用Spring配置 loggin.config 配置指定配置文件

依赖于开发者选择的日志框架. 这些对应的配置文件会被加载

日志框架 配置文件
Logback logback-spring.xmllogback-spring.groovylogback.xmllogback.groovy
Log4j2 log4j2-spring.xmllog4j2.xml
JDK(JAVA Util Logging) logging.properties

1.pom配置


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



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

2. log4j2.xml

将log4j2.xml放到resources文件夹下

也可以在application.yml文件中指定log4j2.xml文件路径

# application.properties 配置文件
logging:
  config: path/to/log4j2.xml # classpath:log4j2.xml

log4j2.xml文件内容:




    
        
        
        springboot-log4j2
        /data/logs/${APP_NAME}
        ${APP_NAME}
    

    
    
        
        
            
            
            
            
        

        
        
            
        

        
        
        
            
                
                
            
            
            
                %d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] %class{36} %L %M -- %msg%xEx%n
            
            
                
                
            
        

        
        
            
                
                
            
            
                %d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] %class{36} %L %M -- %msg%xEx%n
            
            
                
                
            
        

        
        
            
                
                
                
            
            
                %d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] %class{36} %L %M -- %msg%xEx%n
            
            
                
                
            
        

        
        
            
                
                
            
            
                %d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] %class{36} %L %M -- %msg%xEx%n
            
            
                
                
            
        

    

    
    
        
        
            
            
            
            
            
        

        
        
        
            
            
            
            
            
        

        
        
        
        
        
        
        
        
        
    


 

你可能感兴趣的:(log4j2,springboot)