Java-生产环境开启上帝之眼-阿里巴巴神器arthas
1.简介:
Arthas 是一款线上监控诊断产品,通过全局视角实时查看应用 load、内存、gc、 线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查 看方法调用的出入参、异常,监测方法执行耗时,类加载信息等,大大提升线上问 题排查效率。
2. Java项目IDEA安装Arthas插件;
IDEA–> File–>settings–> Plugins —> arthas idea 点击“install”
安装后,需要重启IDEA。
- 在项目中右键出现Arthas Command 表示已经安装成功。
如果IDEA集成Arthas插件,则通过右键找到Arthas Commad 需要操作的API。例:通过具体监控类方法入参和返回值调优:
watch com.zhkj.saas.ims.service.impl.TfOutputServiceImpl unFreezeHandler ‘{params,returnObj,throwExp}’ -n 5 -x 3
Arthas 使用tt命令获取到spring context
进入arthas目录, 执行 java -jar arthas-boot.jar 启动Arthas
执行 tt 命令来记录 RequestMappingHandlerAdapter#invokeHandlerMethod 的请求,
tt -t org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter invokeHandlerMethod
获取数据库的连接:
tt -i 1000 -w 'target.getApplicationContext().getBean("dataSource").getUrl()'