使用在线诊断工具arthas

arthas安装与使用

引言

服务器线上排查bug是一件非常困难的事情。arthas为我们提供了线上诊断的十八般兵器。非常好用。
本文将根据官方文档展示如何安装和简单使用arthas。

正文

环境:windows10、jdk、arthas的运行jar包、idea、可运行的java项目
演示使用arthas的两种方式:1.运行jar的方式。2.springboot集成依赖的方式
官方文档:https://arthas.aliyun.com/doc/en/quick-start.html

jar包的方式运行arthas

  • 下载:
curl -O https://arthas.aliyun.com/arthas-boot.jar
  • 在jar包所在目录运行(需要安装jdk):
java -jar arthas-boot.jar
  • 本机显示如下,输入选择需要进入的java进程,如:1 + enter

    image.png

  • 显示以下内容,则arthas成功附着到运行的java项目中:


    image.png
  • 输入:thread查看所有线程,可看到arthas正常运行。此时也可用浏览器输入:http://127.0.0.1:8563/打开arthas操作界面

    image.png

sprintboot集成arthas

  • springboot添加依赖
 
     com.taobao.arthas
     arthas-spring-boot-starter
     3.5.5

  • 浏览器输入:http://127.0.0.1:8563/

常见命令

dashboard  看板
thread 查看线程
thread 1  查看指定线程
jad com.zj.App  查看线上代码
watch com.zj.App methodA '{params,returnObj,throwExp}'  -n 5  -x 3  可使用idea使用插件【arthas idea】来生成命令【通过右键方法名】
logger 查看日志配置
logger --name ROOT --level debug    更改日志级别
quit exit  退出
stop 退出arthas

idea插件

arthas的命令很多,谁费那劲去记忆。最好的方式就是想用随手查阅和生成。
如果用idea可以用【arthas idea】的插件。
使用比较方便。
比如你想要监控你项目中写的com.zj.App类的methodA方法的输入输出。
在你idea项目的这个类方法名称上右键,Arthas Commond -> Watch,自动在剪切板中生成命令,接下去只需拷贝到arthas命令行中运行即可。


image.png

image.png

我查看的是controller中的HiController的hi方法。

你可能感兴趣的:(使用在线诊断工具arthas)