java中log4j的使用体验

log4j相信大部分java开发者都已经很熟悉了,在此记录下自己的使用过程。

一.文件准备:

1.log4j.jar(我这里使用的版本是log4j-1.2.17.jar,在附件中提供下载)

2.log4j配置,可以使用xml或properties文件进行配置,推荐使用xml形式的配置,方便灵活还直观,一个完整的log4j.xml参考配置文件如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//APACHE//DTD LOG4J 1.2//EN" "log4j.dtd">
<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>
    <appender name="myConsole" class="org.apache.log4j.ConsoleAppender">
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="[%d{dd HH:mm:ss,SSS\} %-5p] [%t] %c{2\} - %m%n" />
        </layout>
        <!--过滤器设置输出的级别 -->
        <filter class="org.apache.log4j.varia.LevelRangeFilter">
            <param name="levelMin" value="debug" />
            <param name="levelMax" value="warn" />
            <param name="AcceptOnMatch" value="true" />
        </filter>
    </appender>

    <appender name="myFile" class="org.apache.log4j.RollingFileAppender">
        <param name="File" value="C:/output.log" /><!-- 设置日志输出文件名 -->
        <!-- 设置是否在重新启动服务时,在原有日志的基础添加新日志 -->
        <param name="Append" value="true" />
        <param name="MaxBackupIndex" value="10" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%p (%c:%L)- %m%n" />
        </layout>
    </appender>

    <appender name="activexAppender" class="org.apache.log4j.DailyRollingFileAppender">
        <param name="File" value="C:/activex.log" />
        <param name="DatePattern" value="'.'yyyy-MM-dd'.log'" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="[%d{MMdd HH:mm:ss SSS\} %-5p] [%t] %c{3\} - %m%n" />
        </layout>
    </appender>
    <!-- 指定logger的设置,additivity指示是否遵循缺省的继承机制,定义此节点以便后文中使用 -->
    <logger name="mylog4j" additivity="true">
        <level value="ERROR" />
        <appender-ref ref="activexAppender" />
    </logger>
    <!-- 根logger的设置 -->
    <root>
        <priority value="debug" />
        <appender-ref ref="myConsole" />
        <appender-ref ref="myFile" />
    </root>
</log4j:configuration>  

需要注意的是,在eclipse中编写xml文件时,对于不能出现智能提示时,需要eclipse添加DTD的引用。如下图:

同时注意log4j.xml的

<!DOCTYPE log4j:configuration PUBLIC "-//APACHE//DTD LOG4J 1.2//EN" "log4j.dtd">

二.开始使用
1.将log4j.xml复制拷贝到src目录下;
2.将log4j-1.2.17.jar引入到编译环境中;
3.编写代码测试。

四.附件
log4j-1.2.17.zip
posted @ 2016-05-18 22:50  Franson  阅读(402)  评论(0编辑  收藏  举报