zoukankan      html  css  js  c++  java
  • log4j配置

    log4j的配置文件是用来设置日志输出级别,存放位置和日志布局的。

    log4j的配置有两种文件格式,log4j.porperties 和 log4j.xml,任选其一都可以。

    log4j.porperties 比 log4j.xml要简洁,但是不支持一些高级的配置选项,比如Filters, 自定义的ErrorHandlers和特殊的Appender(即 AsyncAppender)。

    log4j.porperties的基本格式如下:(其中appenderName1为用户自己定义的名字)

    #配置根Logger
    log4j.rootLogger=【level】, appenderName1 
    ####用户自定义的一些 Appender #配置日志信息输出 log4j.appender.appenderName1
    =【Appender】 #配置日志信息的格式(布局) log4j.appender.appenderName1.layout=【Layout】
    #配置日志信息打印参数
    log4j.appender.
    appenderName1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

    log4j.xml的基本格式如下:(其中appenderName1为用户自己定义的名字)

    <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" version="22">  
    ####用户自定义的一些 Appender <appender name="appenderName1" class=【Appender】> <layout class=【Layout】> #日志格式 <param name="patternName1" value="%d [%t] %-5p %c [%x] - %m%n"/> #日志打印参数 </layout> <filter class="com.twofishes.config.log4j.LoggerMatchFilter"> #自定义的Filter <param name="loggerToMatch" value="com.twofishes.config"/> <param name="acceptOnMatch" value="false"/> </filter> </appender>
    ####配置根Logger <root> <priority value=【Level】/> <appender-ref ref="appenderName1"/> </root> </log4j:configuration>

    【level】日志的输出级别,有以下几种选项:

    FATAL      0  
    ERROR      3  
    WARN       4  
    INFO       6  
    DEBUG      7 

    【Appender】 日志输出位置,有以下几种选项:

    org.apache.log4j.ConsoleAppender(控制台),
    org.apache.log4j.FileAppender(文件),
    org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),
    org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),
    org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

    【Layout】日志输出格式,有以下几种选项:

    org.apache.log4j.HTMLLayout(以HTML表格形式布局),
    org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
    org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
    org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)

    %-4r [%t] %-5p %c %x - %m%n 打印参数,类似C语言中的printf函数的打印格式格式化日志信息,如下:

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

    配置使用方式:

    //方式一:自动快速的使用Log4J缺省的环境
    //BasicConfigurator.configure();
    //方式二:读取properties文件(自定义位置),但是注意这里文件的加载路径 //PropertyConfigurator.configure("E:/workspace-idea/study-demo/log4j-test/src/main/resources/log4j/log4j.properties"); //PropertyConfigurator.configure(HowUseLog4JDemo.class.getClassLoader().getResource("log4j/log4j.properties").getFile()); //方式三:读取XML文件 //DOMConfigurator.configure("xxx");
  • 相关阅读:
    DXF文件格式理解
    Qt Creator调试命令行参数
    qt编译错误:invalid new-expression of abstract class type "*"
    dxf文件解析库libdxf初探
    ubuntu linux编译libdxfrw
    CAD DWG/DXF文件C++解析库libdxfrw
    AutoCAD版本dxf文件与dxflib解析库支持探索
    Linux 6种日志查看方法(转)
    码率、分辨率、帧率和画质计算单位时间码流大小(转)
    纯手工打造车载车牌识别检测系统(转)
  • 原文地址:https://www.cnblogs.com/happySmily/p/5953300.html
Copyright © 2011-2022 走看看