使用log4j记录日志

本文档介绍了在Windows环境下,使用JDK1.6、MyEclipse8.5和Tomcat6配置log4j进行日志记录的方法。首先,将commons-logging.jar和log4j-1.2.15.jar库放入Tomcat的lib目录。接着,详细说明了log4j.properties文件的配置内容,包括日志输出的目的地设置。最后,LogBase类加载该配置文件,使得日志信息被记录到tomcat的logs目录下my.log文件中。
摘要由CSDN通过智能技术生成

1、环境:Win7,JDK1.6,MyEclipse8.5,Tomcat6

2、准备commons-logging.jar、log4j-1.2.15.jar放在${TOMCAT_HOME}/lib目录下

3、log4j.properties文件的内容:

#log4j configuration
log4j.rootLogger=DEBUG, A1,A2
#log4j output target : file
log4j.appender.A1=org.apache.log4j.RollingFileAppender
log4j.appender.A1.File=${catalina.base}/logs/my.log
log4j.appender.A1.MaxFileSize=50KB
log4j.appender.A1.MaxBackupIndex=5 
#log4j info format
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss SSS} %p %l%m%n
#
log4j.appender.A2=org.apache.log4j.ConsoleAppender
log4j.appender.A2.layout=org.apache.log4j.TTCCLayout
#log4j.appender.A2.layout=org.apache.log4j.PatternLayout
#log4j.appender.A2.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss SSS} %p %l%m%n

其中相关参数的配置:

log4j输出目的地:

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

log4j日志输出信息的格式:
org.apache.log4j.HTMLLayout(HTML表格形式)
org.apache.log4j.SimpleLayout(简单格式的日志,只包括日志级别、指定的日志信息 )
org.apache.log4j.TTCCLayout(日志的格式包括日志产生的时间、线程、类别等等信息)
org.apache.log4j.PatternLayout(灵活地自定义日志格式)

org.apache.log4j.PatternLayout定义日志输出信息格式时,可以使用
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss SSS} %p -%m%n 来格式化信息
%c 输出所属类的全名,
%d 输出日志时间其格式为 可指定格式 如 %d{yyyy-MM-dd HH:mm:ss SSS}
%l 输出日志事件发生位置,包括类目名、发生线程,在代码中的行数
%n 换行符
%m 输出代码指定信息,如log.debug(“test”),输出test
%p 输出日志的优先级,即 FATAL ,ERROR ,INFO,DEBUG等
%r 输出从启动到显示该条日志信息所耗费的时间(毫秒数)
%t 输出产生该日志事件的线程名

4、log4j.properties保存在LogBase类同个包下,LogBase加载log4j.properties文件:

        InputStream inStream = LogBase.class.getResourceAsStream("log4j.properties");
        Properties properties = new Properties();
        properties.load(inStream);
        PropertyConfigurator.configure(properties);
5、使用Log4j输出日志信息:

LogFactory.getLog(LogBase.class).info("test");

//在tomcat的logs下看到my.log文件,并有相关的日志信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值