Java项目 log4j2 配置日志写入指定文件

一、背景

由于业务需要,需要将服务部分埋点日志写入指定文件,然后进行日志收集,进行数据分析统计。

需要通过修改log4j2配置,引入对应logger打印日志实现。

二、log4j2.xml配置
 



    
        
            
                %d{ISO8601} [%t] %-5p %c{1.}:%L %X{LOG_ID}-%msg%n
            
        

        
            
                %d{ISO8601} [%t] %-5p %c{1.}:%L %X{LOG_ID}-%msg%n
            
            
                
                
            
        

    
    
        
            
        
        
            
        
    

三、Java使用案例

import lombok.extern.log4j.Log4j2;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

/**
 * Author: richard
 * Date: 2022-07-29 17:46
 * Description:
 **/

@Log4j2
public class Demo {

    private static Logger logger = LogManager.getLogger("demoLogger");

    public static void main(String[] args) {
        for (int i = 0; i < 100; i++) {
            logger.info("demo log write to file" + i);
        }
    }


}

四、文件写入效果

五、易踩坑点

引入类时要注意,要引入正确类。

正确类:

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

博主在使用时,误引入了错误的类,导致日志没有写入指定文件。

错误类:

import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;

而后通过debug发现logger对象异常,又参考官方文档才发现问题。

六、参考资料

log4j2配置官方文档

你可能感兴趣的:(#,java,log4j,java,日志,log4j2)