【发布时间】:2015-05-08 10:36:49
【问题描述】:
我正在尝试使用 log4j 在数据库中记录一些详细信息。我已将 logging-channel-adapter 配置为窃听器。
所需的记录器是 dbappender,但同样不起作用。
spring-integration.xml
<int:wire-tap channel="logChannel"/>
<int:logging-channel-adapter id="logChannel" level="INFO" logger-name="AUDIT_the.details" />
log4j.xml
<logger name="AUDIT_the.details">
<level value="INFO" />
<appender-ref ref="asyncAppender" />
</logger>
<appender name="asyncAppender" class="org.apache.log4j.AsyncAppender">
<param name="blocking" value="false" />
<appender-ref ref="dbAppender" />
</appender>
<appender name="dbAppender" class="LoggerTemplate">
<param name="driver" value="oracle.jdbc.OracleDriver" />
<param name="sql"
value="SQL_QUERY" />
<param name="Threshold" value="info" />
</appender>
【问题讨论】:
-
好吧,如果你说它不起作用,你至少应该指出它在哪里。您没有尝试过简单地记录到控制台吗?或者它如何与
directappender 一起工作,绕过AsyncAppender?没有足够的信息来找出问题...而且...LoggerTemplate是什么?