首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

相关tomcat5和tomcat6的日志配置注释

2012-10-06 
有关tomcat5和tomcat6的日志配置注释以下只是自己做的笔记,方便以后自己翻阅。大家看不懂的可以回复我解释?

有关tomcat5和tomcat6的日志配置注释

以下只是自己做的笔记,方便以后自己翻阅。大家看不懂的可以回复我解释

?

要打开tomcat系统自己的log4j则需要按照官方的做法在common/lib下加入common-logging-1.1.1和log4j1.2.8的jar包
另外在common/classes下放入示例的log4j.properties文件,这就是所谓的全局日志,所有应用共用

如果不需要tomcat系统自己的log4j则只需要在自己的项目里加入log4j.properties和相应的common-logging1.1.1和log4j1.2.8
jar包即可,不需要管tomcat的common里的东西
此时在自己项目里的log4j.properties里配置tomcat系统的日志输出级别也能控制tomcat的系统日志输出
比如加上log4j.logger.org.apache.commons=DEBUG就能打印出所有org.apache.commons下的内容
一般项目里定义log4j.rootLogger=INFO,console,file

-----------------
如果想解决tomcat debug信息太多的问题,可以不要tomcat系统的log4j,在应用了关闭log4j.logger.org.apache=INFO
或是tomcat系统的全局日志配置文件和所有应用的日志配置文件都设置一样的root
即:log4j.rootLogger=DEBUG,console,file
然后再在子应用里关闭log4j.logger.org.apache=INFO,在全局里也关闭log4j.logger.org.apache=INFO,这样意思是各自管理
各自自己的append,互不影响(这里的append只为文件file时,如org.apache.log4j.RollingFileAppender 或是 org.apache.log4j.DailyRollingFileAppender时)
应用有应用自己log4j.properties文件里定义的append,tomcat5也有自己的log4j.properties定义的append,互不干涉,各写各的

注意,如果两个log4j.properties里都有对标准输出,或标准错误输出(或是同一个一模一样的append,如果是文件的话包括文件路径和名称),因为一般
同一台电脑只有一个标准输出,或标准错误输出,的append定义时,并且采用该输出的包的level一样的话(且rootLogger的level也一样),
则对于该包的输出以tomcat系统的log4j.properties
定义的格式输出,忽略应用下的log4j.properties里定义的标准输出的格式,并且该包信息只输出一遍例如log4j.logger.org.apache.commons=INFO包就有类似情况

但是tomcat的启动信息catalina的信息却不能解释,如果在tomcat 的系统log4j.properties里不配置console的话,那么
他们是怎么也不会再eclipse的启动console里显示的,并且他们在文件里的格式也变成了你配置的log4j.properties里的
格式,不再是类似
2010-4-21 13:59:08 org.apache.coyote.http11.Http11AprProtocol init
信息: Initializing Coyote HTTP/1.1 on http-8092
2010-4-21 13:59:08 org.apache.coyote.ajp.AjpAprProtocol init
信息: Initializing Coyote AJP/1.3 on ajp-8009
2010-4-21 13:59:08 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 484 ms
2010-4-21 13:59:08 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2010-4-21 13:59:08 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/5.5.27
2010-4-21 13:59:08 org.apache.catalina.core.StandardHost start
信息: XML validation disabled
2010-4-21 13:59:09 org.apache.catalina.core.ApplicationContext log

这种格式了

所以最后我还是去掉了tomcat5系统的全局log4j的配置,只在自己应用里配置log4j文件,然后加上
log4j.logger.org.apache.commons=INFO
解决jsper debug输出信息太多的问题
而tomcat6在不配置系统全局log4j的情况下,即使自己应用里的log4j.properties里不加上log4j.logger.org.apache.commons=INFO
也不会出现jsper debug输出信息太多的问题

不知道是怎么回事??????????????????????????????????

有时间还是得研究下tomcat5和6的日志缺省实现和他们的启动脚本,看看他们到底干了些什么?????
-----------------

至于tomcat6.0的日志配置暂时还没弄明白怎么回事,tomcat6.0系统缺省好像不是使用的log4j,是用的java.util.logging,所以
在自己项目里配置的log4j.properties内容不会对tomcat6.0的系统日志造成影响,即使加上例如log4j.logger.org.apache.commons=DEBUG
也不能显示org.apache.commons下的内容

8090端口会和360软件冲突

热点排行