greys

 

1.安装

wget http://ompc.oss.aliyuncs.com/greys/release/greys-stable-bin.zip
unzip greys-stable-bin.zip
cd greys
./install-local.sh


2.运行

[work@izj5e75deja8zjdqvp9xfnz greys]$ ./greys.sh 16248
                                                        _                    
  ____  ____ _____ _   _  ___ _____ _____ ____  _____ _| |_ ___  ____  _   _ 
 / _  |/ ___) ___ | | | |/___|_____|____ |  _ \(____ (_   _) _ \|    \| | | |
( (_| | |   | ____| |_| |___ |     / ___ | | | / ___ | | || |_| | | | | |_| |
 \___ |_|   |_____)\__  (___/      \_____|_| |_\_____|  \__)___/|_|_|_|\__  |
(_____|           (____/                                              (____/ 
                                              +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                                              |v|e|r|s|i|o|n|:|1|.|7|.|6|.|6|
                                              +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
ga?>
ga?>

16248 为要监控的进程id

监控某方法的参数

watch -f org.mybatis.spring.SqlSessionTemplate insert params[0] -x 1

  • -b 表示方法调用之前
  • -e 表示方法抛出异常之后
  • -s 表示方法返回之后
  • -f 方法结束之后(正常返回和异常返回)
  • params[0]表示第1个入参,params[x]表示第x+1个入参。
  • -x 1表示展开第一个层级(和调用toString()打印对象类似),比如展开对象的属性,如果属性里面还有对象,就需要展开2级层级(-x 2)

trace org.apache.http.impl.conn.PoolingHttpClientConnectionManager closeIdleConnections  2

PoolingHttpClientConnectionManager类执行closeIdleConnections方法时,打印两次

 

ptrace com.fintell.dp3.api.filter.GlobalFilter *  --path=com.fintell.dp3.* --path=com.fintell.tools.* --path=org.apache.http.impl.client.CloseableHttpClient  --path=org.redisson.RedissonBucket --path=com.alibaba.fastjson.JSONPath  --path=com.alibaba.fastjson.JSONObject  10
通过ptrace追踪GlobalFilter的全部方法的执行耗时,并且统计 --path后面指定包或类中调用到的方法的耗时;一共抓取10次

 

shutdown

还原字节码并断开连接;

 

ptrace com.fintell.dp3.api.filter.GlobalFilter *  --path=com.fintell.*

 

使用注意事项:

1.不能大范围的变更字节码,应当将要监控的类和方法限制在一个小的范围内,因为改写太多的类的字节码,会导致变更字节码的时间非常长,从而导致服务器暂停很长一段时间;

2. 不能无限制的监控,因为监控数据是放在jvm内存中的,如果一直采集,会导致你的内存爆掉,所以一定要指定采集次数;

3. 退出时要还原字节码;

4. 启动greys的用户,要和启动jvm的用户一致,否则greys连接不上jvm

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值