【发布时间】:2014-08-15 12:29:09
【问题描述】:
我希望使用 log4j2 从我的 Web 应用程序和服务器 (tomcat 6) 本身记录,理想情况下都记录到同一个文件。我的配置适用于 Web 应用程序,但不适用于服务器类。
我想要的是将以下行写入文件,(它们目前仅写入控制台)
Aug 15, 2014 1:03:24 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-80
Aug 15, 2014 1:03:24 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 1287 ms
我在 tomcat/lib 目录中有 log4j-api-2.0.1.jar、log4j-core-2.0.1.jar 和 log4j2.xml。一个精简的 log4j2.xml 如下所示。我没有看到 status="all" 给出的信息有任何问题。 log4j2 正在自动设置 - 我没有使用 CATALINA_OPTS 传递配置文件。
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="all">
<Appenders>
<RollingFile name="R" fileName="../logs/general.log" filePattern="../logs/general-%d{yyyy-MM-dd}.log" append="true">
<PatternLayout>
<Pattern>%d %p %c{1.} [%t] %m %ex%n</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy />
</Policies>
<DefaultRolloverStrategy max="1000"/>
</RollingFile>
<Console name="STDOUT" target="SYSTEM_OUT">
<PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
</Console>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="R" level="info"/>
<AppenderRef ref="STDOUT" level="error"/>
</Root>
</Loggers>
</Configuration>
知道我做错了什么吗?
【问题讨论】:
-
你在tomcat发行版上改过juli和juli-adapter了吗?
-
是的,我正在使用这些 jars 文件的 /bin/extras 版本