【发布时间】:2013-08-18 15:44:28
【问题描述】:
我需要在我的 Java EE 应用程序中记录 SQL 执行时间(任何进一步的统计数据都是可选的)。
以更不标准的方式进行设置:应用程序服务器上的数据源为池化 JDBC 连接提供服务。
应用程序用于数据库访问组合:
- 休眠和
- Spring JDBC模板
它运行在:
- Glassfish OSE 和
- Oracle DBS
我知道:Anything better than P6Spy? 但是从我的角度来看,问题/答案已经过时了。
到目前为止我发现了什么:
- 我可以选择纯 Hibernate 方法 (hibernate show query execution time)
- 但在我的情况下,由于混合数据库访问,这是不可行的
- 我可以使用一些自定义 JDBC 驱动程序
- p6spy - 然而项目似乎已经死了几年(最后一次提交是在 3 年前:http://sourceforge.net/p/p6spy/code/23/tree/trunk/)
- log4jdbc - 但是超过 1 年没有发布,源活动似乎是 cca 6 个月未触及 (http://code.google.com/p/log4jdbc/source/list)
- 另一个 2:log4jdbc-log4j2 和 log4jdbc-remix - 似乎还活着,但我不确定稳定性和广泛使用情况
非常欢迎根据经验提出建议。
请注意,我对这样的答案很感兴趣:我们正在使用 XYZ,这是我们的经验,而不是我刚刚在谷歌上搜索并感觉...
【问题讨论】: