• log4j.xml基本配置


    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE log4j:configuration PUBLIC "-//LOGGER"
    "http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd">
    <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
    <!-- 输出日志到控制台 ConsoleAppender -->
    <appender name="console" 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" /> <!--[%d{HH:mm:ss,SSS}|%C.%M(%L)]|%m%n" -->
    </layout>
    <filter class="org.apache.log4j.varia.LevelRangeFilter">
    <param name="LevelMin" value="INFO"/>
    <param name="LevelMax" value="INFO"/>
    </filter>
    <!--
    <filter class="org.apache.log4j.varia.LevelMatchFilter">
    <param name="LevelToMatch" value="INFO" />
    </filter>
    -->
    <filter class="org.apache.log4j.varia.StringMatchFilter">
    <param name="StringToMatch" value="Configkeeper" />
    <param name="AcceptOnMatch" value="false" />
    </filter>
    </appender>
    <root>
    <level value="INFO"/>
    <appender-ref ref="console" />
    </root>
    </log4j:configuration>

    %M:输出方法名 

    %p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL, 

    %d: 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy-MM-dd HH:mm:ss,SSS},输出类似:2011-10-18 22:10:28,921 
    %r: 输出自应用启动到输出该log信息耗费的毫秒数 
    %c: 输出日志信息所属的类目,通常就是所在类的全名 
    %t: 输出产生该日志事件的线程名 
    %l: 输出日志事件的发生位置,相当于%C.%M(%F:%L)的组合,包括类目名、发生的线程,以及在代码中的行数。 
    %x: 输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用中。 
    %%: 输出一个"%"字符 
    %F: 输出日志消息产生时所在的文件名称 
    %L: 输出代码中的行号 
    %m: 输出代码中指定的消息,产生的日志具体信息 
    %n: 输出一个回车换行符,Windows平台为" ",Unix平台为" "输出日志信息换行 

     当某个logger的logging request(即printing method(error(),info()..))的级别高于或者等于该logger的级别(即在log4j.properties或者log4j.xml中定义)的时候,该logging request就为enable.
             一旦该logger的logging request为enable,那么该logging request将总会打印到该logger所有的appender中包括它的所有父logger的appender。(而不会管父logger的级别如何)。除非该logger的父logger的additivity设置为false,默认的情况下为true。
            某个logger的additivity设置为false,表示log只打印到本log的appender中,而不再打印到其父logger的appender。

  • 相关阅读:
    《MySQL入门很简单》练习7.4
    《MySQL入门很简单》练习6.9
    《MySQL入门很简单》练习6.6
    《MySQL入门很简单》练习6.5
    "mysql"不是内部或外部命令,也不是可运行的程序或批处理文件
    TControl与Windows消息
    TObject与消息分发
    长串
    使用TSplitter控件调整其他控件大小简便方法
    Cocos2d-x缓存机制(一)
  • 原文地址:https://www.cnblogs.com/caer/p/5969524.html
Copyright © 2020-2023  润新知