gpt4 book ai didi

java - Log4j 不将日志写入数据库

转载 作者:行者123 更新时间:2023-11-29 08:11:54 25 4
gpt4 key购买 nike

我需要将应用程序的错误记录到数据库中。我在 log4j.xml 中添加了以下内容数据库日志未写入表,但我可以在控制台上看到日志消息。

这可能是什么原因。我的数据库连接字符串详细信息是正确的。

log4j.xml

  <appender name="jdbcAppender" class="org.apache.log4j.jdbc.JDBCAppender"> 
<param name="URL" value="jdbc:oracle:thin:@host:1521:test" />
<param name="Driver" value="oracle.jdbc.driver.OracleDriver" />
<param name="User" value="scott" />
<param name="Password" value="tiger" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern"
value="INSERT INTO my_table (log_date, log_level, location, message) VALUES ( '%d{ISO8601}','%p',
'%C;%L', '%m' )"
/>
</layout>
</appender>
<appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern"
value="%d{ISO8601} %p (%C;%L) %m%n"
/>
</layout>
</appender>
<logger name="logging.simple.jdbcLogger" additivity="true">
<level value="info"/>
<appender-ref ref="jdbcAppender"/>
</logger>
<root>
<level value="info"/>
<appender-ref ref="STDOUT"/>
</root>
</log4j:configuration>

最佳答案

您将在控制台上看到日志消息,因为您已将所有 日志消息发送到控制台,但只有 logging.simple.jdbcLogger 层次结构下的记录器被发送到 jdbcAppender

您是否在控制台上看到 logging.simple.jdbcLogger 消息?

关于java - Log4j 不将日志写入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7673001/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com