写了个简单的 Java sql 执行监控

2021-07-30 12:29:27 +08:00
 thetbw

平时开发的时候有时候要看一下执行的 sql 是啥,为什么数据不对之类的,看程序的日志太乱了。正好最近在学习 java agent 相关的知识,就写了这个工具。

使用

直接 java -jar ***.jar 运行即可,注意要使用 jdk 里面的 java 命令 ,不是单独 jre 里,因为缺少 tools.jar 包

目前个人测试还是没问题的,不过给一同事试了下,不知道为什么 DriverManager.getDrivers() 返回的驱动为空。

预览图

随便修改 java class 的感觉还是蛮有意思的

地址 https://gitee.com/thetbw/monitor-jdbc

2030 次点击
所在节点    分享创造
10 条回复
mazhimazh
2021-07-30 17:40:03 +08:00
可以的,加油
xinyana
2021-07-31 07:35:56 +08:00
MySQL 还是 mssql 呢
thetbw
2021-07-31 09:16:56 +08:00
@xinyana 主要是 mysql,通过修改 mysql 驱动实现的
zgcwkj
2021-07-31 20:00:49 +08:00
@xinyana sql server 自带有工具查看啊
LouisGuo
2021-08-02 08:52:11 +08:00
跑偏了,这个时候你应该优化你的日志收集系统吧
morty0
2021-08-02 15:09:43 +08:00
JRebel 有这个功能
thetbw
2021-08-02 16:31:20 +08:00
@morty0 是的,这个当初就是想实现 jrebel 那种效果,不过 jrebel 还是蛮强得,方法调用栈和 redis 都有
fantastM
2021-08-02 21:19:49 +08:00
「看一下执行的 sql 是啥」这个需求是不是可以通过给 JDBC 接口套个代理来实现,这样就可以对任意 JDBC 实现都生效了(成本是需要入侵业务了......
camork
2021-08-05 13:59:30 +08:00
@morty0 请教下 JRebel 怎么实现?
thetbw
2021-08-07 12:45:44 +08:00
@camork 具体我也不太清楚,不过应该都是通过埋点的方式,也就是动态修改代码,里面插入一些自己的统计逻辑.可以参考阿里开源的 arthas

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/792666

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX