使用commons.logging结合log4j显示调试和日志信息

2 篇文章 0 订阅
2 篇文章 0 订阅
 

请在我上一篇博客“使用commons.logging中的simplelog显示调试和日志信息”建立的工程的基础上再行操作。

1、到http://archive.apache.org/dist/logging/log4j,下载相应版本的log4j,我这里选择的是1.2.9版本(下载logging-log4j-1.2.9.zip,解压之后在其中的dist/lib下找到log4j-1.2.9.jar),拷贝其中的log4j-1.2.9.jar文件到之前工程的WebRoot/WEB-INF/lib文件夹下

2、修改src文件夹中commons-logging配置文件,具体内容为:

org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger

3、在src文件夹下建立log4j配置文件:log4j.properties;这个文件在编译之后会自动拷贝到WEB-INF/classes文件夹下,此文件的内容为:

log4j.rootLogger=DEBUG,stdout,A_default
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t](%F:%L) - %m%n
log4j.appender.A_default=org.apache.log4j.RollingFileAppender
log4j.appender.A_default.File=logTest.log
log4j.appender.A_default.MaxFileSize=100KB
log4j.appender.A_default.MaxBackupIndex=10
log4j.appender.A_default.layout=org.apache.log4j.PatternLayout
log4j.appender.A_default.layout.ConversionPattern=%d{ISO8601}-%p-%m%n

此处的log4j.rootLogger=DEBUG,stdout,A_default设置了log信息记录级别为DEBUG,并会采用两种显示模式,其中stdout设置为再控制台显示,A_default则输出为文件。
4、运行程序,访问index.jsp页面,查看其日志显示情况,可以看到在控制台输出了DEBUG级别的信息,同时可以在TOMCAT根目录的bin目录下找到logTest.log文件,若日志文件大小超过了100k,则可以看到还会有logTest.log.1这类文件。

5、也可以针对某个包(package)中的logger类单独设置log信息显示级别,比如说在log4j.properties中加入下面的配置项:

log4j.logger.org.apache.jsp.index_jsp=WARN

则在访问index.jsp页面的时候,只会记录WARN级别以下的log信息。

更多的配置项目及内容,大家可以参考log4j官网文档:http://logging.apache.org/log4j/1.2/manual.html

此处记录log的文件logTest.log设置的为相对目录,大家可能不太理解,为什么是相对TOMCAT的目录,而不是相对工程所在的目录,这主要是:服务器如tomcat启动时会自动搜索web-inf目录和web-inf/classes目录中log4j.properties文件,如有则自动加载,而且服务器会自动区分哪个log4j配置文件是针对那个应用的,在访问相应的应用的时候会自动根据相应的配置文件作出处理。

更多关于“log4j中配置日志文件相对路径”的问题,大家可以参考一下:http://sharep.blog.51cto.com/539048/143734

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值