Arthas精准定位Java应用CPU负载过高问题

1.前言

尝试一:定位哪个Controller执行了代码

前言

trace指令能追踪调用链路,而Springmvc应用都是借助于:javax.servlet.Servlet * 执行的

watch指令能够实时监测指定方法的:返回值,抛出异常,入参,同时支持OGNL操作

实践

为了节省时间,这里直接给出实施方案,采用watch指令,命令如下[监听内容是依靠trace的内容决定的,但是SpringMvc应用都是一样的,所以可以复用]:

watch org.springframework.web.servlet.DispatcherServlet getHandler returnObj

发起调用会看到打印信息,就能迅速定位到对应的代码

Arthas精准定位Java应用CPU负载过高问题

尝试二:反编译查看代码

Arthas精准定位Java应用CPU负载过高问题