一、Javamethod
JavaMethod是杭研的哨兵系统nss中可以接入查看类中方法的方法名、调用次数、耗时等的一个有用工具,具体接入方式如下:
1. 首先要去op工单上面申请机器接入到哨兵(可以让运维PE帮忙看一下要接入哪个集群);
2. 然后要下载 sentry-javaagent-home.zip,地址:
http://doc.hz.netease.com/pages/viewpage.action?pageId=42557026
3. 用unzip解压后进入文件夹,
sentry-javaagent-premain-2.0.0.jar ------ java agent的主体部分。目前用2.0.0版本,以后变化的可能性非常小。
sentry.properties ------ 基础配置文件,主要需要配置的appName和instance ,appName用在cmdb中创建的应用的名字(具体请联系应用运维),instance 默认 default。其他的一些配置,一般无需修改。
javaMethod.xml------ 配置需要拦截的java方法,配置方法见“java方法监控”一章
url.xml url------ 配置需要拦截的java方法,配置方法见“URL的监控”一章
修改配置文件,具体可以参考b-qa17的配置
4.把sentry-javaagent-collector-0.2.34.jar这个jar包放置在 /home/appuser/urs/regzj_dl2/webroot-urs-regzj-perftest-Ins1/WEB-INF/lib
目录下面。如果不是最新的版本,可以在maven里面用
com.netease.sentry
sentry-javaagent-collector
0.2.34
进行更新一下,然后去相应的maven仓库里面找到这个jar包就可以了
5. 修改jvm参数,在omad上面部署的tomcat应用可以这样:
即下面这两行,注意目录修改成自己相应的:
-javaagent:/home/appuser/shaobing/sentry-javaagent-home/sentry-javaagent-premain-2.0.0.jar -Dsentry_collector_libpath=/home/appuser/urs/regzj_dl2/webroot-urs-regzj-perftest-Ins1/WEB-INF/lib
这一步完成后,会产生一个/home/appuser/sentry-javaagent 文件夹,从里面可以看到日志;注意:下面的这个WEB-INF/lib目录下必须包含 sentry-javaagent-collector-0.2.24.jar 这个jar包。
6. sentry.properties这个文件【/home/appuser/shaobing/sentry-javaagent-home 这个目录下面】的配置
#isJavaMethodCollectorEnable=false 这个应该注释掉,默认的是true的,就是开启拦截的这个功能;
配置成功后,可以在哨兵系统上看到如下的信息,在脚本运行一段时间后,就可以在哨兵的页面刷新看到所拦截到的javamethod的信息: