【发布时间】:2011-01-19 20:33:30
【问题描述】:
我一直试图让这个简单的用例工作但不能:在 FILE Appender 上定义默认的 INFO 阈值,但定义一个具有 DEBUG 级别的类别。这是我正在使用的 jboss 4.2.1.GA log4j.xml 文件,我只想记录 java.sql 调用。
<appender name="SQL_FILE" class="org.jboss.logging.appender.DailyRollingFileAppender">
<errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
<param name="File" value="${jboss.server.log.dir}/sql.log"/>
<param name="Append" value="false"/>
<param name="Threshold" value="INFO"/>
<param name="DatePattern" value="'.'yyyy-MM-dd"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p [%c] %C %m%n"/>
</layout>
</appender>
<category name="java.sql">
<priority value="DEBUG"/>
<appender-ref ref="SQL_FILE"/>
</category>
<root>
<appender-ref ref="SQL_FILE"/>
</root>
它不只记录 java.sql,它记录 INFO 及更高版本,并且不包含任何 java.sql 信息。如果没有简单的解决方案,那么我只能将 appender Threshold 设置为 DEBUG 并关闭包含的多个类别的所有日志记录,这似乎是浪费时间。
我尝试了以下方法,但无法正常工作:Configuring multiple log files in log4j while using categories。
【问题讨论】: