0

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

使用的技术有 Struts2、iBatis、JQuery、tomact(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 系统日志在哪里定义?没有特定于应用程序的日志记录拦截器。

有什么猜测或想法吗?

谢谢并恭祝安康

4

1 回答 1

0

假设它被部署为 WAR 文件,它们应该在您展开的 Web 应用程序目录中定义。

/path/to/server/webapps/{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
于 2012-07-13T05:26:21.870 回答