近期因为项目原因,调研了一下TPTP与Tomcat的关系,记录如下
很久很久以前玩过TPTP,当初最终成果是不用插件启动Tomcat,运行相关Web程序,查看调用时间。不过具体步骤忘记了,现在想重新搞一次。
测试TPTP
首先下载TPTP,写一个Main函数,测试ok。
安装Agent
下一步是测试Tomcat下Web应用的性能,根据网络教程,应该下载agntctrl.win_ia32-TPTP-4.7.2,在本地配置三个环境变量,然后运行ACServer.exe。
配置环境变量如下:
- Set
TPTP_AC_HOME=<<Agent Controller Home>>
- Set
JAVA_PROFILER_HOME=%TPTP_AC_HOME%/plugins/org.eclipse.tptp.javaprofiler
- Set
PATH=%JAVA_PROFILER_HOME%;%TPTP_AC_HOME%/bin;%PATH%
启动成功后,可以通过netstat -a 查看是否有10002,10005,10006端口。
配置Tomcat的Agent
需要在启动Tomcat是, 在jvm启动参数追加 -XrunpiAgent:server=enabled ,由于我一般采用com.sysdeo.eclipse.tomcat_3.3.0插件,所以在[JMV Settings]中设置一下就可以了。
配置Agent Client 在Eclipse中的Profile Confilgurations中选择[Attach to Agent]中追加一个配置,连接到[lochlhost:10002]上,在配置一下右边的Agents就可以了。
要注意的是要进行监控过滤,例如过滤器规则为分析 以“net.faquir” 开头的 包中的所有方法并忽略其他任何代码中的任何方法,则需要配置
classname=[net.faquir.*] Method Name=[*] Rule=[INCLUDE]
classname=[*] Method Name=[*] Rule=[EXCLUDE]
进行项目监控
启动Tomcat,运行Attach to Agent,就可以进行监听了。