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 @   Franson  阅读(425)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
点击右上角即可分享
微信分享提示