• 输出信息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呢?程序员: 那我将永远无法完成任务.

  • 相关阅读:
    BZOJ 3555: [Ctsc2014]企鹅QQ hash
    bzoj 4300: 绝世好题 dp
    Codeforces Round #192 (Div. 1) C. Graph Reconstruction 随机化
    Codeforces Round #192 (Div. 1) B. Biridian Forest 暴力bfs
    Codeforces Round #192 (Div. 1) A. Purification 贪心
    HDU 5514 Frogs 容斥定理
    HDU 5515 Game of Flying Circus 二分
    HDU 5521 Meeting 最短路
    HDU 5510 Bazinga 暴力匹配加剪枝
    HDU 5512 Meeting 博弈论
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3065695.html
Copyright © 2020-2023  润新知