log4j配置及详解

来源:互联网 发布:软件大道附近租房 编辑:程序博客网 时间:2024/06/01 10:19


一、搭配环境_主要介绍下载jar包与配置基本环境


1,下载log4j的jar包:http://logging.apache.org/log4j/1.2/download.html

     


    2,新建java project项目。


    3,解压log4j-1.2.17.zip文件,将其中log4j-1.2.17.jar添加到项目中,并添加到buildpath中。


    4,在类路径src下新建log4j.properties文件。


这样的话,一个简单的log4j环境就搭好了。


二、在类中定义要输出或存储的信息

       HelloLog4j.java


PNRLog4j.java 这个是需要单独输出到某个文件的。而且每天产生一个,以日期命名。



三、log4j.properties内的键值详解_包括输出级别,输出到哪(控制台或指定文件,输出内容的格式,输出某个特定的包或者特定的类等等)


 1, 包含各种配置的截图, 

红consoleLogger: 打到控制台(类似System.out.println()). 

 粉htmlLogger:输出到html文件。

蓝txtLogger:输出到txt文件。

黄sizeLogger:根据固定文件大小输出,

黑pnrLogger:只输出指定的类com.itkt.log4j.PNRLog4j.java中的信息



A, rootLogger的值分为两部分,



第一个debug是输出级别,总共有以下常用级别error<warn<info<debug

意为如果定义为debug, 则在类中用logger.debug('' ")、logger.error(" ")的信息都输出,

如果定义为info, 则只输出在类中用logger.info(''info")、logger.warn(''warn ")、logger.error(" error")定义的输出. 

输出可输出到控制台或存储文件,也可同时输出到这两个地方。


运行HelloLog4j.java后的结果打印为:


     第二个以后为自己定义的输出, 每个输出必须包括三部分:输出类型, 输出到哪, 输出格式(文件/控制台),。

类型有以下几种,

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


B, 输出到控制台


consoleLogger是自己命的名,输出的类型是直接打印,类似于System.out.println(" "); 

输出位置是控制台,

输出格式为patternLayout ,需自己定义。

      %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL,priority
  %r 输出自应用启动到输出该log信息耗费的毫秒数
  %c 输出所属的类目,通常就是所在类的全名className
  %t 输出产生该日志事件的线程名threadName
  %n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”nextLine
  %d 输出日志时间点的日期或时间,可自定义格式为%d{yyy MMM dd HH:mm:ss:SSS}date
  %l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。line

       %m 是logger打印的信息.

C, 输出到文件_html格式


输出类型为file, 输出位置为d:/debug.html, 输出格式为其HTMLLayout, 这样的话就会在D盘自动生成debug.html文件.



D, 输出到文件_txt格式


同html,只是输出格式为log4j.appender.txtLogger.layout=org.apache.log4j.TTCCLayout



E, 特定类PNRLog4j.java输出到文件,每天产生一个,以日期命名



把电脑时间往后调一天,再测试,就会出现当前天的日志文件



没有后缀的,是10.13号的,也可以打开。需要注意的是,文件中的内容只是PNRLog4j.java中输出的信息。


F, 输出到文件_txt格式, 每个文件最大3KB, 最多产生5个文件


限定每个文件大小为3kb, 只备份最近的5个文件,当产生第6个文件时,会把最早的那个删除。

多次运行HelloLog4j.java后的结果为:


打开文件:



<<完>>


原创粉丝点击