场景:工作中经常会遇到jar包替换到测试服务器上,被别人再次覆盖,或者jekins重部署覆盖掉后,无法正常访问和远程debug串行的情况;
解决:可以通过阿里的诊断工具,对测试服务器的部署jar代码进行查看,或者可以查看传输的参数和返回值;
具体使用步骤:
1.下载https://alibaba.github.io/arthas/arthas-boot.jar
2.java -jar arthas-boot.jar 运行后回车回车~
3.比如监听方法的参数和返回值
watch com.foton.m2m.iov.fms.action.ConfirmMessageAction listApply params (watch+类路径+方法名+params)
watch com.foton.m2m.iov.fms.action.ConfirmMessageAction listApply returnObj (watch+类路径+方法名+returnObj)
4.比如想查看源代码
jad com.foton.m2m.iov.fms.action.TransportTaskAction
6.看服务器运行情况等等
- dashboard——当前系统的实时数据面板
- thread——查看当前 JVM 的线程堆栈信息
- jvm——查看当前 JVM 的信息
- sysprop——查看和修改JVM的系统属性
- sysenv——查看JVM的环境变量
- getstatic——查看类的静态属性