通过JRockit Mission Control追踪JDBC执行情况

先决条件

  • 已安装了Oracle JRockit 虚拟机
  • 安装WebLogic Server时也安装了随时示例,因为下面我们将用medrec示例程序测试

配置脚本

找到%WL_HOME%\samples\domains\medrec\bin目录下的setDomainEnv.cmd脚本,做如下修改:

1. 确认使用JRockit作为Java虚拟机

将BEA_JAVA_HOME指向JRockit安装目录,例如:

set BEA_JAVA_HOME=S:\jdk\64\jrockit-jdk1.6.0_22-R28.1.1-4.0.1

在set SUN_JAVA_HOME下方加入:

set JAVA_VENDOR=Oracle

2. 在脚本未端加入如下代码:

if “%JAVA_VENDOR%”==”Oracle” (
    set JAVA_VM=%JAVA_VM% -Xmanagement:ssl=false,authenticate=false,port=7091,autodiscovery=true
)

配置Mission Control

1. 执行%JAVA_HOME%\jrmc.exe

2. 创建“连接器”

conn

3. 右键点击刚刚创建的连接“localhost”,选择:启动飞行记录

rec

点击“高级”,去掉“仅显示模板设置”,然后左边选择WebLogic,右侧去掉“已启用”,然后在左边找到“JDBC”,在右侧选择“已启动”,如下图:

rec2

点击确认

模拟测试

打开浏览器,输入网址:http://localhost:7011/medrec/,根据页面提示,反复操作。

查看追踪结果

左边只选择“JDBC”,右边选择“WebLogic Server / JDBC /JDBC Statement Execute –SQL”,我们可以清楚地看到执行了哪些SQL语句以及执行时间等信息。

ret

(完)

3 thoughts on “通过JRockit Mission Control追踪JDBC执行情况

  1. 这个功能很不错,不知道有没有什么开放的API,可供其他工具调用的?

    牛秀元 回复:

    其实都是读的JMX,你也可以自己写呀

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>