初识Log4j

Logger操作的Appender是一个接口,

通常用ConsoleAppenderFileAppenderRollingfilleAppender类实现Layout是一个抽象PatternLayoutSimpleLayoutHTMLLayout类实现。

  1. Logger - 日志写出器,供程序员输出日志信息

  2. Appender - 日志目的地,把格式化好的日志信息出到指定的地方去

    1. ConsoleAppender - 目的地控制台的Appender

    2. FileAppender - 目的地文件的Appender

    3. RollingFileAppender - 目的地大小受限的文件的Appender

  3. Layout - 日志格式化器,用来把程序logging request格式化成字符串

    1. PatternLayout - 用指定的pattern格式化logging requestLayout

    2. SimpleLayout - 用指定的simpleLayout格式化logging requestLayout

    3. HTMLLayout - 用指定的HTML格式化logging requestLayout

程序员持有Logger对象对日志进行控制,Logger在使用前要做这样几步:

   1、实例化Logger对象Logger logger

2、设置loggerLevel----使用Logger类中的setLevel方法

3、指定logger使用哪一种appender,---- 使用Logger类中的

addAppenderAppender appender)方法,在使用此法前要实例化一个Appender对象。

要实例化Appender对象得先实例化一个Layout对象。

 

 

 

 

 

 

写一个简单的例子 使用ConsoleAppender类、FileAppender类、SimpleLayout类、HTMLLayout

 

 

 

     logger = Logger.getLogger(COMM0000InitAction.class);

     logger.setLevel((Level) Level.DEBUG);

     String pattern = %d{ISO8601} - %p - %m%n

 

 

 

   //选择PatternLayout格式输出。

     PatternLayout layout = new PatternLayout (pattern);

     FileAppender appender = null;

          try {

                  //选择FileAppender作为存储log的文件格式

              appender = new FileAppender (layout,"test.log");

           } catch(Exception e) {}

     logger.addAppender(appender);

           logger.error("ERROR");

logger.debug("DEBUG");

logger.warn("WARN");

logger.info("INFO");

logger.trace("TRACE");

 

 

 

程序执行结果:

2004-12-14 09:46:14,514 - ERROR - ERROR

2004-12-14 09:46:14,564 - DEBUG - DEBUG

2004-12-14 09:46:14,564 - WARN - WARN

2004-12-14 09:46:14,564 - INFO - INFO

2004-12-14 09:46:14,564 - DEBUG – TRACE

 

 

 

在使用logger.error("ERROR");语句前所有对logger的操作都被称为初始化log4j。这些操作可使用文本文件或者XML文件完成。

XML配置文件示例:  configurationfile.xml

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

  <appender name="ConsoleAppender" class="org.apache.log4j.ConsoleAppender">

    <layout class="org.apache.log4j.SimpleLayout"/>

  </appender>

  <root>

    <priority value ="debug" />

    <appender-ref ref="ConsoleAppender"/>

  </root>

</log4j:configuration> 

使用org.apache.log4j.xml.DOMConfigurator. configure("configurationfile.xml");方法把配置信息文件入到Java程序中

public class externalxmltest {

   static Logger logger = Logger.getLogger(externalxmltest.class);

   public static void main(String args[]) {

      DOMConfigurator.configure("xmllog4jconfig.xml");

      logger.debug("Here is some DEBUG");

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值