zoukankan      html  css  js  c++  java
  • 输出信息log4j.properties的作用与使用方法

    最近应用开发的进程中出现了一个小问题,顺便记录一下原因和方法--输出信息

        一、log4j.properties 用作

             Log4j是Apache的一个开放源码代项目,通过应用Log4j,我们可以控制日记信息运送的目的地是控制台、文件、GUI件组、甚至是套接口服务器、NT的事件记录器、UNIXSyslog护守程进等;我们也可以控制每一条日记的输出格式;通过定义每一条日记信息的级别,我们够能更加致细地控制日记的成生进程。最使人感兴趣的就是,这些可以通过一个配置文件来灵巧地行进配置,而不需要修改应用的码代。

           此外,通过Log4j其他语言接口,您可以在C、C++、.Net、PL/SQL序程中应用Log4j,其语法和用法与在Java序程中一样,使得多语言 分布式系统到得一个同一致一的日记件组模块。而且,通过应用各种第三方扩展,您可以很方便地将Log4j集成到J2EE、JINI甚至是SNMP应用中。(转自:http://blog.sina.com.cn/s/blog_761110d701017yuu.html)

        二、log4j.properties 应用方法

        .数参意思说明:

        输出级别的种类

        ERROR、WARN、INFO、DEBUG

        ERROR 为严重错误 主要是序程的错误

        WARN 为一般正告,比如session失丢

        INFO 为一般要表现的信息,比如登录登出

        DEBUG 为序程的调试信息

        配置日记信息输出目的地

        log4j.appender.appenderName = fully.qualified.name.of.appender.class

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

        2.org.apache.log4j.FileAppender(文件)

        3.org.apache.log4j.DailyRollingFileAppender(天每生产一个日记文件)

        4.org.apache.log4j.RollingFileAppender(文件大小达到指定尺寸的时候生产一个新的文件)

        5.org.apache.log4j.WriterAppender(将日记信息以流格式发送到恣意指定的方地)

        配置日记信息的格式

        log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class

        1.org.apache.log4j.HTMLLayout(以HTML表格式形布局),

        2.org.apache.log4j.PatternLayout(可以灵巧地指定布局式模),

        3.org.apache.log4j.SimpleLayout(含包日记信息的级别和信息符字串),

        4.org.apache.log4j.TTCCLayout(含包日记生产的间时、线程、类别等等信息)

        控制台选项

        Threshold=DEBUG:指定日记息消的输出最低次层。

        ImmediateFlush=true:默许值是true,意谓着有所的息消都会被当即输出。

        Target=System.err:默许情况下是:System.out,指定输出控制台

        FileAppender 选项

        Threshold=DEBUF:指定日记息消的输出最低次层。

        ImmediateFlush=true:默许值是true,意谓着有所的息消都会被当即输出。

        File=mylog.txt:指定息消输出到mylog.txt文件。

        Append=false:默许值是true,即将息消增加到指定文件中,false指将息消覆盖指定的文件内容。

        RollingFileAppender 选项

        Threshold=DEBUG:指定日记息消的输出最低次层。

        ImmediateFlush=true:默许值是true,意谓着有所的息消都会被当即输出。

        File=mylog.txt:指定息消输出到mylog.txt文件。

        Append=false:默许值是true,即将息消增加到指定文件中,false指将息消覆盖指定的文件内容。

        MaxFileSize=100KB: 后缀可所以KB, MB 或者是 GB. 在日记文件达到该大小时,将会动自滚动,即将来原的内容移到mylog.log.1文件。

        每日一道理
    间时好比一条小溪,它能招引我们奔向生活的海洋;间时如同一叶扁舟,它将帮助我们驶向理想的彼岸;间时犹如一支画笔,它会指点我们描绘人生的画卷。

        MaxBackupIndex=2:指定可以生产的滚动文件的最大数。

        log4j.appender.A1.layout.ConversionPattern=%-4r %-5p %d{yyyy-MM-dd HH:mm:ssS} %c %m%n

        日记信息格式中几个符号所代表的含意:

     -X号: X信息输出时左齐对;

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

     %d: 输出日记间时点的日期或间时,默许格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出相似:2002年10月18日 22:10:28,921

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

     %c: 输出日记信息所属的类目,常通就是地点类的全名

     %t: 输出生产该日记事件的线程名

     %l: 输出日记事件的生发位置,相当于%C.%M(%F:%L)的合组,包含类目名、生发的线程,以及在码代中的行数。举例:Testlog4.main (TestLog4.java:10)

     %x: 输出和以后线程相关联的NDC(嵌套断诊环境),特别用到像java servlets这样的多户客多线程的应用中。

     %%: 输出一个"%"符字

     %F: 输出日记息消生产时地点的文件名称

     %L: 输出码代中的行号

     %m: 输出码代中指定的息消,生产的日记详细信息

     %n: 输出一个车回行换符,Windows平台为"\r\n",Unix平台为"\n"输出日记信息行换

     可以在%与式模符字之间加上修饰符来控制其最小度宽、最大度宽、和文本的齐对式方。如:

     1)%20c:指定输出category的名称,最小的度宽是20,如果category的名称小于20的话,默许的情况下右齐对。

     2)%-20c:指定输出category的名称,最小的度宽是20,如果category的名称小于20的话,"-"号指定左齐对。

     3)%.30c:指定输出category的名称,最大的度宽是30,如果category的名称大于30的话,就会将边左多出的符字截掉,但小于30的话也不会有格空。

     4)%20.30c:如果category的名称小于20就补格空,并且右齐对,如果其名称于长30符字,就从边左较远输出的符字截掉。

        三、用常配置Demo

    # DEBUG < INFO < WARN < ERROR < FATAL
    # Global logging configuration
    log4j.rootLogger=info, stdout,file
    # My logging configuration...
    #log4j.logger.com.tocersoft.school=DEBUG
    #log4j.logger.net.sf.hibernate.cache=debug
    ## Console output...
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%5p %d %C: %m%n
    
    log4j.appender.file=org.apache.log4j.FileAppender
    log4j.appender.file.File=../logs/iask.log
    log4j.appender.file.layout=org.apache.log4j.PatternLayout
    log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}  %l  %m%n
    
    log4j.logger.org.apache.activemq.spring=WARN
    #see cache info
    log4j.logger.org.hibernate.cache=info

    文章结束给大家分享下程序员的一些笑话语录: 开发时间
      项目经理: 如果我再给你一个人,那可以什么时候可以完工?程序员: 3个月吧!项目经理: 那给两个呢?程序员: 1个月吧!
    项目经理: 那100呢?程序员: 1年吧!
    项目经理: 那10000呢?程序员: 那我将永远无法完成任务.

  • 相关阅读:
    【贪心】【堆】Gym
    【并查集】Gym
    【拓扑排序】【bitset】Gym
    【递归】【线段树】【堆】AtCoder Regular Contest 080 E
    【二分图】【并查集】XVII Open Cup named after E.V. Pankratiev Stage 14, Grand Prix of Tatarstan, Sunday, April 2, 2017 Problem L. Canonical duel
    【动态规划】【滚动数组】【bitset】XVII Open Cup named after E.V. Pankratiev Stage 14, Grand Prix of Tatarstan, Sunday, April 2, 2017 Problem J. Terminal
    【二分】【字符串哈希】【二分图最大匹配】【最大流】XVII Open Cup named after E.V. Pankratiev Stage 14, Grand Prix of Tatarstan, Sunday, April 2, 2017 Problem I. Minimum Prefix
    【枚举】【最小表示法】XVII Open Cup named after E.V. Pankratiev Stage 14, Grand Prix of Tatarstan, Sunday, April 2, 2017 Problem F. Matrix Game
    【推导】【构造】XVII Open Cup named after E.V. Pankratiev Stage 14, Grand Prix of Tatarstan, Sunday, April 2, 2017 Problem E. Space Tourists
    【推导】【贪心】XVII Open Cup named after E.V. Pankratiev Stage 14, Grand Prix of Tatarstan, Sunday, April 2, 2017 Problem D. Clones and Treasures
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3065695.html
Copyright © 2011-2022 走看看