`
michealBean
  • 浏览: 8532 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

log4j_log4j.xml 例子

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

    <!-- ========================== 自定义输出格式说明================================ -->
      <!-- %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL -->
      <!-- %r 输出自应用启动到输出该log信息耗费的毫秒数  -->
      <!-- %c 输出所属的类目,通常就是所在类的全名 -->
      <!-- %t 输出产生该日志事件的线程名 -->
      <!-- %n 输出一个回车换行符,Windows平台为“/r/n”,Unix平台为“/n” -->
      <!-- %d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921  -->
      <!-- %l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)  -->
      <!-- ========================================================================== -->

      <!-- ========================== 输出方式说明================================ -->
      <!-- Log4j提供的appender有以下几种:  -->
      <!-- org.apache.log4j.ConsoleAppender(控制台),  -->
      <!-- org.apache.log4j.FileAppender(文件),  -->
      <!-- org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件), -->
      <!-- org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),  -->
      <!-- org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)   -->
  <!-- ========================================================================== -->
    <!-- 输出日志到控制台  ConsoleAppender -->   
    <appender name="console"   
        class="org.apache.log4j.ConsoleAppender">  
        <param name="Threshold" value="info"></param>  
        <layout class="org.apache.log4j.TTCCLayout">  
            <param name="ConversionPattern" value="TTCCLayout"></param>  
        </layout>  
    </appender>  
  
    <!-- 输出日志到文件  每天一个文件 -->  
    <appender name="dailyRollingFile"  
        class="org.apache.log4j.DailyRollingFileAppender">  
       <param name="Threshold" value="info"></param>  
        <param name="ImmediateFlush" value="true"></param>  
        <param name="File" value="c:/logs/dailyRollingFile.log"></param>  
        <param name="DatePattern" value="'.'yyyy-MM-dd'.log'"></param>  
        <layout class="org.apache.log4j.PatternLayout">  
            <param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss\} %-5p] [%t] {%c:%L}-%m%n"></param>  
        </layout>  
    </appender> 

  <!-- 输出到日志文件  -->
    <appender name="log4jTestDebug" class="org.apache.log4j.RollingFileAppender">
        <param name="File" value="D:/work/log/test_log4j_debug.log"/>
        <param name="Append" value="true"/>
        <param name="MaxFileSize" value="5KB"/>
        <param name="MaxBackupIndex" value="2"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%c %d{ISO8601}-- %p -- %m%n"/>
        </layout>
        <filter class="org.apache.log4j.varia.LevelRangeFilter">
            <param name="LevelMin" value="DEBUG"/>
            <param name="LevelMax" value="DEBUG"/>
        </filter>
    </appender>

   <appender name="log4jTestLogInfo" class="org.apache.log4j.RollingFileAppender">
        <param name="File" value="D:/work/log/test_log4j_info.log"/>
        <param name="Append" value="true"/>
        <param name="MaxFileSize" value="5KB"/>
        <param name="MaxBackupIndex" value="2"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%c %d{ISO8601}-- %p -- %m%n"/>
        </layout>
        <filter class="org.apache.log4j.varia.LevelRangeFilter">
            <param name="LevelMin" value="INFO"/>
            <param name="LevelMax" value="INFO"/>
        </filter>
    </appender>

    <appender name="CUSTOMIZATION" class="org.apache.log4j.RollingFileAppender">
      <param name="File" value="local/customization.log"/>
      <param name="MaxBackupIndex" value="10"/>
      <param name="MaxFileSize" value="1MB"/>
      <layout class="org.apache.log4j.PatternLayout">
          <param name="ConversionPattern" value="[%-d{MM-dd HH:mm:ss:SSS}][%t][%p][%c]- %m %n" />
      </layout>
    </appender>
    
    <!-- 输出日志到文件  文件大小到达指定尺寸的时候产生一个新的文件 -->  
    <appender name="COMMON" class="org.apache.log4j.RollingFileAppender">
      <param name="File" value="local/error.log"/>       
      <param name="MaxBackupIndex" value="15"/>
      <param name="MaxFileSize" value="1MB"/>
      <layout class="org.apache.log4j.PatternLayout">
          <param name="ConversionPattern" value="[%-d{MM-dd HH:mm:ss:SSS}][%t][%p][%c]- %m %n" />
      </layout>
    </appender> 

       <!--通过<category></category>的定义可以将各个包中的类日志输出到不同的日志文件中-->
		<category name="com.qingyuan.huake">
			<priority value="warn" />
			<appender-ref ref="log4jTestLogInfo" />
			<appender-ref ref="console" />
		</category>
	  
	    <!--通过<category></category>的定义可以将各个包中的类日志输出到不同的日志文件中-->
		<category name="com.qingyuan.dream">
			<priority value="warn" />
            <appender-ref ref="log4jTestDebug" />
            <appender-ref ref="console" />
		</category>
	 
	<!--定义全局的日志输出级别,但是在输出目的地的配置中配置的具体输出级别优先级高于全局定义的优先级。  
    如果在railyFile中定义<param name="Threshold" value="info"></param>,那么将会把info以上级别的信息输出 --> 
    <root>
        <priority value="error"/>
        <appender-ref ref="COMMON" />
    </root>
    
</log4j:configuration>
<!--  
    Log4J Configuration Quick Reference:
    ====================================
    Priority order is DEBUG < INFO < WARN < ERROR < FATAL
    PatternLayout conversion characters: 
    %c   Category of the logging event
    %C   Fully qualified class name of the caller
    %d   Date of the logging event  (example: %d{HH:mm:ss,SSS} )
    %F   File name where the logging request was issued (caution: extremely slow)
    %l   Location information of the caller (caution: extremely slow)
    %L   Line number from where the logging request was issued (caution: extremely slow)
    %m   Application-supplied message
    %M   Method name from where the logging request was issued (caution: extremely slow)
    %n   Line separator
    %p   Priority of the logging event
    %r   Number of milliseconds since the start of the application
    %t   Name of the thread that generated the logging event
    %x   Nested diagnotic context associated with the thread
    %%   A single percent sign   
    Format modifiers examples:   
    %20c     Left pad with spaces if category is less than 20 characters long
    %-20c    Right pad with spaces if category is less than 20 characters long
    %.30c    Truncate from the beginning if category is more than 30 chars long
    %20.30c  Left pad 20 chars + truncate from beginning if more than 30 chars
    %-20.30c Right pad 20 chars + truncate from beginning if more than 30 chars
    
    Examples:  "%r [%t] %-5p %c %x - %m\n"
    "%-6r [%15.15t] %-5p %30.30c %x - %m\n"  
-->

  

package com.qingyuan.dream;

import org.apache.log4j.Logger;

// 将配置好的log4j.xml 放到项目的classpath下即可,比如放在src下
// 定期删除log 日志,reference:<[http://javahello.blog.sohu.com/136061618.html]>
// 详解: reference:<[http://blog.csdn.net/hu_shengyang/article/details/6754031]>
// download:http://www.java2s.com/Code/Jar/a/Downloadapachelogginglog4jjar.htm
public class TestLog
{
    private static final Logger log = Logger.getLogger(TestLog.class);  
     
        public static void main(String[] args) {  
           for(int i=0;i<10;i++){  
            log.info("Enter the main()....");  
            log.debug("Enter the main()....");  
            log.warn("Enter the main()....");  
            log.info("Enter the main()....");   
            log.info("log end.");  
           }    
       }  
}

 

分享到:
评论

相关推荐

    log4j入门到详解

    1. Log4j 简介 ........... 2. 下载与使用............ 2.1 下载 log4j 的 jar 文件 2.2 编写一个测试类 ...... 2.3 编写配置文件........ 2.4 输出结果 ........... 3. Log4j 构成 ........... 4. Log4j 使用方法.....

    Log4j 学习笔记.doc

    Log4j 学习笔记. 1. Log4j的类图 2. Logger:日志写出器 1. Logger的输出方法 2. Logger的命名规则 ...5. 我自己的一个使用xml文件配置log4j环境的很简单的例子 6. Log4j的编码习惯 参考资料

    log4jxml详细分析 例子全

    log4jxml 详细介绍 和 对比举例!

    Log4J配置实例(xml格式)

    NULL 博文链接:https://sosuny.iteye.com/blog/432260

    log4j.properties详解与例子

    在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行...Log4j支持两种配置文件格式,一种是XML格式的文件,一种是java properties(key=value)【Java特性文件(键=值)】。(这里只说明properties文件)

    Log4j日志管理系统简单使用说明

    Log4j有三个主要的组件:Loggers,Appenders和Layouts,这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松的记录信息的类型和级别,并可以在运行时控制日志输出的样式和...

    log4j,log4j2,logback 日志插件的使用例子

    1. log4j 的XML配置使用 2. log4j2 的配置详解,JDBC 配置,CloseableThreadContext 的使用(自定义输出日志文件 例如 logback MDC) 3.logback 的XML配置与使用,MDC的使用,SiftingAppender,DBAppender(c3p0,druid) ...

    关于log4j的配置和例子

    log4j配置.xls 常用log4j配置,一般可以采用两种方式,.properties和.xml

    log4j-configuration-builder:没有`log4j.xml`的Apache Log4j2配置生成器

    Apache Log4j 2 提供了一个简单的 API 来配置具有log4j.xml和的日志上下文。 该模块提供了一种类似的方法: 无需使用log4j.xml文件进行配置 简化准备 Apache Log4j 日志上下文所需的 API 调用链 通过实现 Apache ...

    log4j日志文件

    很好的log4j文档,配置以及例子,一看便知!值得拥有

    ZendFramework中文文档

    5.4. Zend_Config_Xml 6. Zend_Console_Getopt 6.1. Getopt 简介 6.2. 声明 Getopt 规则 6.2.1. 用短语法声明选项 6.2.2. 用长语法声明选项 6.3. 读取(Fetching)选项和参数 6.3.1. 操作 Getopt 异常 6.3.2...

    log4j从入门到详解

    Log4j从入门到详解 目录 1. Log4j简介 2. 下载与使用 2.1下载log4j的jar文件 2.2 编写一个测试类 2.3 编写配置文件 2.4 输出结果 . 3. Log4j构成 4. Log4j使用方法 4.1 properties配置文件详解 4.2 XML配置...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    第19章 使用log4j进行日志操作 564 19.1 log4j介绍 564 19.1.1 logger组件 564 19.1.2 appender组件 566 19.1.3 layout组件 567 19.2 使用log4j 568 19.3 log4j使用实例 572 19.4 ndc和mdc 585 19.5 小结 ...

    spring+shiro+ehcache例子

    在web.xml中配置log4j信息打印 (需要自己将log4j的配置文件给打开) 三: 配置文件 查看/src/config/ ,配置文件可观察文件名称理解 四: 登录名为2:可以进行权限的验证,以及shiro的缓存。 登录名为任意...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    第19章 使用log4j进行日志操作 564 19.1 log4j介绍 564 19.1.1 logger组件 564 19.1.2 appender组件 566 19.1.3 layout组件 567 19.2 使用log4j 568 19.3 log4j使用实例 572 19.4 ndc和mdc 585 19.5 小结 ...

    SSM例子,下载即可使用,不需要配置其他东西了

    ssm的例子,包含各种配置文件,下载后即可使用。配置文件有: applicationContext.xml,database.properties,log4j.properties,mybatis-config.xml,springmvc.xml

    spring aop 实现源代码--xml and annotation(带lib包)

    Spring根据Adivce加入到业务流程的时机的不同,提供了四种不同的Advice:Before Advice、After Advice、Around Advice、Throw Advice。 1、Before Advice 顾名思义,Before Advice会在目标对象的方法执行之前被调用...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    第19章 使用log4j进行日志操作 564 19.1 log4j介绍 564 19.1.1 logger组件 564 19.1.2 appender组件 566 19.1.3 layout组件 567 19.2 使用log4j 568 19.3 log4j使用实例 572 19.4 ndc和mdc 585 19.5 小结 ...

Global site tag (gtag.js) - Google Analytics