官网链接
https://arthas.aliyun.com/doc/dashboard.html
github及用户案例
https://github.com/alibaba/arthas
https://github.com/alibaba/arthas/issues?q=label%3Auser-case
基础入门
官网教程及用户case十分详细,此处仅分享部分常见场景和对应指令
常见场景问题
● 公共环境debug影响其他开发人员
● 生产环境查看方法入参出参/配置参数是否正确等
arthas安装
● 登录服务器/进入容器
● 下载jar包 (或者直接docker集成arthas)
curl -O https://arthas.aliyun.com/arthas-boot.jar
arthas idea 插件安装
部分指令比较复杂, 建议使用插件生成
几个简单的case
在配置文件/配置中心修改了配置,查看是否生效
- linux/docke容器内启动arthas
输入数字,选择要监控的应用
使用arthas idea插件生成需要执行的指令
静态字段
最终指令:getstatic com.leado.fox.constant.Constant QI_NIU_CLOUD_ADDRESS -x 3
非静态字段,比如各个properties配置类。目前方式是通过 spring上下文 获取该类的实例。需要手动触发一次http调用(任意接口)
对应指令watch -x 3 -n 1 org.springframework.web.servlet.DispatcherServlet doDispatch ‘@org.springframework.web.context.support.WebApplicationContextUtils@getWebApplicationContext(params[0].getServletContext()).getBean(“jedisConfiguration”).jedisConfig’
看方法实际调用链路
trace com.leado.fox.service.impl.SysUserService ipmEditStaff -n 5 --skipJDKMethod false
查看方法入参出参(指定条件 #cost || param)
cup繁忙排查