maven简单配置log4j日志(编译器 IDEA)

maven简单配置log4j日志(编译器 IDEA)

      首先在你的pom文件中导入以下依赖(version不一定要和我的相同)

        
        
            log4j
            log4j
            1.2.16
        
        
        
            commons-logging
            commons-logging
            1.1.3
        

        然后再resources下创建log4j.properties文件

###设置Logger输出级别(debug)和输出目的地(stdout(控制台名),logfile(文件名))###
log4j.rootLogger=debug,stdout,logfile
###日志输出级别:fatal>error>warn>info>debug ,开发环境一般使用debug###

###1.把日志信息输出到控制台 2.打印到system.err上3.指定日志布局类型###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.err
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout

###1.把日志输出到文件:2.文件:zr.log3.指定转换格式4.指定日志布局类型###
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.File=src/main/resources/zr.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}%l%F%p%m%n

      log4j配置文件中

log4j.rootLogger=debug,stdout,logfile

      debug是你的rootLogger输出级别,它的级别有faltel(严重错误),error(错误),warn(警告),info(信息),debug(调试)从左往右级别依次降低。rootLogger设置的是输出和文件中记录的最低级别。当设置为debug的时候所有不小于它级别的都会输出,当设置为info的时候那么除debug外其他的都会输出。一般再开发环境下用debug。而stdout是设置控制台输出的别名,后面控制台配置需要使用相同的名字,logfile是你设置的输出文件别名,和stuout一样后面的文件设置都要通过这个别名来设置。

 

log4j.appender.logfile.File=src/main/resources/zr.log

这个设置的是log日志文件的路径及名字,如果直接写xxx.log那么会直接将日志信息打印在当前模块目录下。写成src/main/resources/将会打印到resources下。文件名可以自定义,此处使用zr.log

而这两部分设置的是你日志打印格式

log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}%l%F%p%m%n

输出格式类型

%p:输出日志信息优先级,即DEBUG,INGO,WARN,ERROR,FATAL

%d:输出日志时间点的日期或时间

%r:输出自应用启动到输出该log信息耗费的毫秒数

%l:输出日志时间的发生位置,相当于%C.%M(%F:%L)的组合,包括类:Testlog4.main(TestLog4.java:10)

%F:输出日志消息产生时所在的文件名称

%L:输出代码中的行号

%m:输出代码中指定消息,产生的日志具体信息

%n:输出一个回车换行符,Windows平台为"\r\n",Unix平台为“\n”输出日志信息换行

 

下面是在代码中如何使用log4j进行日志操作

import org.apache.log4j.Logger;
import org.junit.Test;

public class TestJunti {
    /**
     * log4j
     */
    private Logger log4j=Logger.getLogger(TestJunti.class);
    @Test
    public void test(){
        log4j.debug("log4j方法的开始..");
//        log4j.warn();
//        log4j.info();
//        log4j.error();
//        log4j.fatal();
        System.out.println("ojbk");
    }
}

当你运行后你的控制台和对应路径的文件就会出现你写入的日志

你可能感兴趣的:(maven简单配置log4j日志(编译器 IDEA))