首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >log4j2异步记录器实际上是否将数据插入到MySQL中?

log4j2异步记录器实际上是否将数据插入到MySQL中?
EN

Stack Overflow用户
提问于 2014-07-01 19:50:00
回答 1查看 1.6K关注 0票数 0

我知道log4j2是用来记录信息的。我真的很困惑于log4jdbc的附录。它实际上是做什么的?我读过教程,但我真的不明白。当您通过jdbc将数据插入数据库时,它会记录这些信息吗??或者log4j2记录器实际上能够登录到数据库中?

常规jdbc可以执行以下操作:

代码语言:javascript
复制
String query ="INSERT INTO 'table' ('blah' ...";
Statement st;
st.executeUpdate(query);

log4j异步记录器实际上是否具有与->st.executeUpdate(查询)相当的内容;哪个插入数据的速度要快得多??

谢谢你的努力!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-01 20:05:52

log4j2 JDBC将使用JDBC,并在每个日志事件中插入行。

JDBCAppender使用标准JDBC将日志事件写入关系数据库表。http://logging.apache.org/log4j/2.x/manual/appenders.html#JDBCAppender

至于

log4j异步记录器实际上是否具有与->st.executeUpdate(查询)相当的内容;哪个插入数据的速度要快得多??

异步附加程序不执行批处理插入(批处理执行executeBatch),这就是我所指的。批插入是由JDBC中的bufferSize控制的(参见前面的链接)。

异步追加程序是修饰器(它们像JDBC那样包装了附加程序),这样您的代码就不会在一个附加程序阻塞时阻塞(在本例中是executeBatch )。

还有另一个项目,我认为你混淆了log4jdbc-log4j2。该项目将使用log4j2记录您的SQL语句。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24518202

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档