Не удается контролировать уровень журнала Struts2 с помощью log4j.xml - PullRequest
0 голосов
/ 03 декабря 2011

Я играю с веб-приложением Struts2 (Struts 2.2.3.1), работающим на Tomcat 6. Как видно из нескольких уроков, у меня есть следующий бит в моем log4j.xml, который развернут в WEB-INF / классах веб-приложения.directory:

<logger name="com.opensymphony">
    <level value="DEBUG" />
</logger>

<logger name="org.apache.struts2">
    <level value="DEBUG" />
</logger>

После установки свойства log4j.debug=true в моей конфигурации Tomcat я нахожу (как и ожидалось) следующие выходные данные в журнале Tomcat:

log4j: DocumentBuilderFactory is: com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
log4j: debug attribute= "null".
log4j: Ignoring debug attribute.
log4j: Threshold ="null".
log4j: Retreiving an instance of org.apache.log4j.Logger.
log4j: Setting [com.opensymphony] additivity to [true].
log4j: Level value for com.opensymphony is  [DEBUG].
log4j: com.opensymphony level set to DEBUG
log4j: Retreiving an instance of org.apache.log4j.Logger.
log4j: Setting [org.apache.struts2] additivity to [true].
log4j: Level value for org.apache.struts2 is  [DEBUG].
log4j: org.apache.struts2 level set to DEBUG
log4j: Level value for root is  [DEBUG].
log4j: root level set to DEBUG

Однако Struts отсутствуетСообщения об отладке можно найти в любом лог-файле.Моя версия log4j - 1.2.14.

Как правильно контролировать ведение журналов в Struts?

1 Ответ

0 голосов
/ 03 декабря 2011

Если я прав, вы должны определить своего рода Appender, чтобы перенаправить вывод журнала в файл журнала.

в случае, если по умолчанию журнал struts2 будет отображаться на консоли. Определите что-то вроде этогов вашем файле log4j

<appender name="FA" class="org.apache.log4j.FileAppender">
<param name="File" value="sample.log"/>
<param name="Threshold" value="INFO"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-4r [%t] %-5p %c %x - %m%n" />
</layout>
</appender>

Вы должны указать log4j, куда перенаправить выход

...