struts2中的日志文件

时间:2012-07-13 05:19:34

标签: java web-applications struts2 web

我正在维护一个没有文档的门户网站。

使用的技术是Struts2,iBatis,JQuery,topct(Linux)上的jsp等。

Log4j.properties定义日志文件:

log4j.appender.R.File=${catalina.home}/webapps/logfile.log

但是我没有在定义的路径上获取logfile.log。我在这条路径上得到另一个名字(比如test.log)。

我的理解是没有使用log4j文件,而test.log是通过代码创建的。 但我无法通过代码找出这些属性的定义。

test.log记录xWorks相关日志。

日志文本示例:

2012-07-09 00:00:58,894 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] DEBUG org.apache.catalina.session.ManagerBase - Start expire sessions StandardManager at 1341772258894 sessioncount 2
2012-07-09 00:00:58,895 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] DEBUG org.apache.catalina.session.ManagerBase - End expire sessions StandardManager processingTime 1 expired sessions: 0
2012-07-09 00:01:59,111 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] DEBUG org.apache.catalina.session.ManagerBase - Start expire sessions StandardManager at 1341772319111 sessioncount 2
2012-07-09 00:01:59,112 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] DEBUG org.apache.catalina.session.ManagerBase - End expire sessions StandardManager processingTime 1 expired sessions: 0
2012-07-09 00:02:59,336 

任何机构都可以告诉我这些日志的定义位置。我搜索了代码但没有找到任何内容。还有struts系统日志定义在哪里? 没有特定于应用程序的日志记录拦截器。

任何猜测或想法?

谢谢和问候

1 个答案:

答案 0 :(得分:0)

它们应该在您的爆炸式网络应用程序目录中定义,假设它已部署为WAR文件。

/路径/到/服务器/的 web应用/ {APPNAME} /WEB-INF/classes/log4j.properties

在该文件中,您可以定义记录输出的路径。例如,我有一个日志文件:

/ path / to / server / logs / {log file} ,配置如下:

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - <%m>%n

log4j.appender.error=org.apache.log4j.DailyRollingFileAppender
log4j.appender.error.file=${catalina.base}/logs/gc-error.log
log4j.appender.error.datePattern='.'yyyy-MM-dd
log4j.appender.error.layout=org.apache.log4j.PatternLayout
log4j.appender.error.layout.ConversionPattern=[%p] %d (%c) - <%m>%n