配置 apache log4j.xml 文件 学习笔记(把日志输入到项目的根目录)

先了解原理,再讲怎么使用

 

一、log4j的简述

Log4j最主要的三大基本构件:

 

1.Appenders(定义log信息输出到哪里,如控制台,是指文件中等)

      org.apache.log4j.ConsoleAppender (控制台)  

      org.apache.log4j.FileAppender (文件)

      org.apache.log4j.RollingFileAppender(滚动文件,自动记录最新日志)
      org.apache.log4j.DailyRollingFileAppender (每天产生一个日志文件)
      org.apache.log4j.WriterAppender (将日志信息以流格式发送到任意指定的地方)

 

2.Layouts(log信息进行格式化,方便阅读)

     %m 输出代码中指定的消息;

     %M 输出打印该条日志的方法名;

     %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL;

     %r 输出自应用启动到输出该log信息耗费的毫秒数;

     %c 输出所属的类目,通常就是所在类的全名;

     %t 输出产生该日志事件的线程名;

     %n 输出一个回车换行符,Windows平台为"rn”,Unix平台为"n”;

 

3.Categories(对log信息按级别过滤,指定那种级别的信息输出)

     日志记录器(Logger)是日志处理的核心组件。log4j具有5种正常级别(Level)。 

     日志记录器(Logger)的可用级别Level (不包括自定义级别 Level)

 

     DEBUG Level指出细粒度信息事件对调试应用程序是非常有帮助的。   

     INFO level表明 消息在粗粒度级别上突出强调应用程序的运行过程。 

     WARN level表明会出现潜在错误的情形。

     ERROR level指出虽然发生错误事件,但仍然不影响系统的继续运行。 

     FATAL level指出每个严重的错误事件将会导致应用程序的退出

 

二、使用(这里给出控制台和每日产生一个日志文件的配置)

 

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

<!DOCTYPE log4j:configuration SYSTEM "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="%-5p %d{MM-dd HH:mm:ss} %m (%F:%L) \n"/>

        </layout>

    </appender>

    

    <!-- 日志输出到指定文件 -->

    <appender name="myFile" class="org.apache.log4j.DailyRollingFileAppender">  

        <param name="File" value="${htglxt}log/app.log" />   

        <param name="DatePattern" value="'.'yyyy-MM-dd'.log'" />   

        <layout class="org.apache.log4j.PatternLayout">  

         <param name="ConversionPattern"   

            value="%-5p %d{MM-dd HH:mm:ss} %m (%F:%L) \n" />  

        </layout>   

    </appender>  

    

     <!-- 定义输出的类别 -->

    <category name="java.sql">

        <priority value="debug" />

    </category>

    <category name="com.ibatis">

        <priority value="error" />

    </category>

 

    <!-- 根logger的设置

   (这一步很重要,会将上面定义的两种输出方式都加进入,也可以选其一,建议开发过程使用控制台,生       产环境使用文件)

    -->  

    <root>  

        <priority value ="error"/>  

        <appender-ref ref="myConsole" />    

        <appender-ref ref="myFile" />    

    </root>  

</log4j:configuration>

 

       特别注意:上面的配置中的红色标记要特别注意,这里配置的是你的项目根路径,此参数是在wex.xml文件中配置的,名字可以随便命名,这里推荐使用项目名称。

 

<context-param>

<param-name>webAppRootKey</param-name>

<param-value>htglxt</param-value>

</context-param>

<context-param>

<param-name>log4jConfigLocation</param-name>

<param-value>WEB-INF/classes/log4j.xml</param-value>

</context-param>

<listener>

<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>

</listener>

 

 

当然输出的位置也可以使用绝对路径,这里不再演示。

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值