Log4j的使用以及配置

来源:互联网 发布:网页分类算法 编辑:程序博客网 时间:2024/06/06 12:35

log4j的使用


1.首先引用相关jar包,目前只需要引用slf4j-log4j12 即可.因为其中已经包含了log4j的类.

      <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.6.1</version>
        </dependency>


2.将log4j.xml配置文件放置于resource目录下,相当于classpath:log4j.xml   会自动群resource目下找,如果找不到则会报错.

3.相关配置每一个Appender相当于一个输出对象

可以常用一下选项:

a.ConsoleAppender 控制台输出

b.DailyRollingFileAppender 每日创建滚动文件

c.RollingFileAppender  文件大小到达指定尺寸的时候产生一个新的文件
d.FileAppender 文件


<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

    <!-- [公共Appender] 控制台STDOUT -->
    <appender name="consoleAppender" class="org.apache.log4j.ConsoleAppender">
        <param name="encoding" value="UTF-8" />
        <param name="target" value="System.out" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{ISO8601} - %-5p [%t:%C{1}@%L] - %m%n" />
        </layout>
    </appender>


    <appender name="BIZ-APPENDER" class="org.apache.log4j.DailyRollingFileAppender">
        <param name="file" value="d:bi/acs-bi.log" />
        <param name="append" value="true" />
        <param name="encoding" value="UTF-8" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern"
                value="%d %-5p %c{2} - %m%n" />
        </layout>
    </appender>

  //logger 的name即是对这个包下下面所有类产生影响,并且包括这个包下的所有路径
    <logger name="com.test" additivity="false">
        <level value="info" />
        <appender-ref ref="consoleAppender" /> //所使用的Appender
    </logger>


//logger 的name 也可以是一个logger的名字 ,用来实例化的时候找name

private final Logger biLogger = LoggerFactory.getLogger("testLogger");

    <logger name="testLogger" additivity="false">
        <level value="info" />
        <appender-ref ref="consoleAppender" /> //所使用的Appender
    </logger>


// 跟logger .  一切会以最终配置的为准,若p为debug  q配置logger的为info 若输出debug的日志,则不会被看到
    <root>
        <level value="info" />
        <appender-ref ref="consoleAppender" />
        <appender-ref ref="BIZ-APPENDER" />
    </root>
</log4j:configuration>

配置以上即可进行测试,会输出相应日志。

4.在于Spring进行集成时。

可以加入下列配置。

<context-param>  
           <param-name>webAppRootKey</param-name>  
           <param-value>root</param-value>  
       </context-param>  
     
       <context-param>  
           <param-name>log4jConfigLocation</param-name>  
           <param-value>classpath:log4j.xml</param-value>  
       </context-param>  
         
       <context-param>  
           <param-name>log4jRefreshInterval</param-name>  
           <param-value>3000</param-value>  
       </context-param>  
 
       <listener>  
           <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>  
       </listener>

0 0
原创粉丝点击