Log4j 日志工具demo以及配置文件实例

时间:2022-03-14 04:35:26

在项目中产生日志是一个项目所必须的,现在用的比较广泛,比较流行的日志工具 就有 log4j ;这个日志工具其实使用起来是很方便的;在使用的时候创建什么的都和java.util.logging.Logger一样的,而jdk的log日志信息的获取和导出是使用Handler 对象,而导出的信息的格式是通过Formatter对象来定义的而log4j的日志信息导入,以及格式是在配置文件中进行配置的。具体看下面:

1、 导入需要的架包:(1)、log4j.jar  (2)、commons-pool.jar

2、 在eclipse中建立一个新的项目,并在src的根目录下创log4j.properties 文件,文件名必须是log4j ,这里配置日志信息导出的地址,以及导出格式的定义。

3、配置文件,配置日志信息导出的地址和格式:

 #log4j.rootLogger = DEBUG, A1
 #log4j.rootLogger = INFO, A1,B1,C1
 log4j.rootLogger = ERROR, A1
#这里定义的是error级别的,其实用info级的就可以了,反正有6个级别你自己看着用;

# log4j.rootLogger=后面有两个参数,自己也可以定义多个参数,但第一个就是定义日志的级别,而后面的就是定义日志信息的导出地址如A1,B1,C1这些都是到处地址

# org.apache.log4j.ConsoleAppender 将日志信息导出到控制台
#log4j.appender.A1 = org.apache.log4j.ConsoleAppender
org.apache.log4j.FileAppender 将日志信息导出到文件(磁盘)

log4j.appender.A1 = org.apache.log4j.FileAppender
 
log4j.appender.A1 = org.apache.log4j.RollingFileAppender

#定义日志的存放路径和文件名;
log4j.appender.A1.File = D:/log4j.log

log4j.appender.A1.MaxFileSize=500KB
#当log文件大于500K的时候删除重新建;
log4j.appender.A1.MaxBackupIndex=10
log4j.appender.A1.layout = org.apache.log4j.PatternLayout
#使用的是自定义的日志格式,下面就是自定义的一些参数咯;
#log4j.appender.A1.layout.ConversionPattern = %-4r [%t] %-5p %c %x - %m%n
log4j.appender.A1.layout.ConversionPattern = [%d] [%t] %m%n

4、测试类

package com.soufun;

import org.apache.log4j.Logger;

public class TestLog4j {

 public void log4j(){

  Logger log=Logger.getLogger(this.getClass().getName());

  System.out.println("test log4j");

  log.info("testLog4j");

 }


 public static void main(String[] args) {

  TestLog4j tl=new TestLog4j();

  tl.log4j(); 

 }

}

到这里 简单的日志配置成功了,也可以记录日志信息……

        Log4j 的配置文件实例

     # INFO是日志的级别,有DEBUG,INFO ,WARN,ERROR,FATAL而后面的都是输出地址

     log4j.rootLogger=INFO, stdout, R, L  

    #  日志是由Loggerappenderlayout组成

    # 输出到控制台

    log4j.appender.stdout=org.apache.log4j.ConsoleAppender   

    重新定义日志级别

    log4j.appender.stdout.Threshold=INFO    

    输出颜色的控制

    log4j.appender.stdout.Target = System.out

    定义输出格式,也就是layout定义了输出的格式

    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  

    输出了时间的格式   

    log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss} [%5p] - %c -%F(%L) -%m%n  

    输出到文件,指定输出地址   

    log4j.appender.R=org.apache.log4j.RollingFileAppender 

    重新定义输出级别,只对R起作用

    log4j.appender.R.Threshold=INFO

    指定了输出文件

    log4j.appender.R.File=F\:/ebooking.log  

    定义输出格式

    log4j.appender.R.layout=org.apache.log4j.PatternLayout  

    定义时间格式  

    log4j.appender.R.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss} [%5p] - %c -%F(%L) -%m%n    

    # 定义了存储这个日志文件的大小

    log4j.appender.R.MaxFileSize=1MB    

    定义了日志的输出日志  

    log4j.appender.L=org.apache.log4j.DailyRollingFileAppender  

    定义日志的级别

    log4j.appender.L.Threshold=INFO    

    定义日志输出文件名和路径

    log4j.appender.L.File=F\:/ebooking_error.log   

     log4j.appender.L.DatePattern='_'yyyy-MM-dd'.log'  

    # 定义日志输出格式  

    log4j.appender.L.layout=org.apache.log4j.PatternLayout   

    输出日志中时间的格式

    log4j.appender.L.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss} [%5p] - %c -%F(%L) -%m%n