优化及排查线程

Arthas-Java排查神器使用

2019-02-22  本文已影响49人  jackcooper

推荐使用arthas-boot.jar方式

1、下载及安装

wget https://alibaba.github.io/arthas/arthas-boot.jar
java -jar arthas-boot.jar --target-ip 0.0.0.0

arthas-boot是Arthas的启动程序,它启动后,会列出所有的Java进程,用户可以选择需要诊断的目标进程。

特别说明:(重点):arthas不可以直接远程连接,启动arthas时输入的ip和端口都是本机暴露给外界的ip和端口
target-ip: 如果要在其他机器使用Web Console,请填写本机的ip(如:192.168.33.44),此时可以访问:http://ip:8563
windows下报错处理:com.sun.tools.attach.AttachNotSupportedException: no providers installed,请检查<jdk>/bin/或者/<jdk>/jre/bin下是否有attach.dll文件,如果没有请重新安装jdk,本人亲测版本jdk1.8.0_201。

2、命令列表

基础命令

3、进阶使用

基础命令

jvm相关

class/classloader相关

monitor/watch/trace相关

请注意,这些命令,都通过字节码增强技术来实现的,会在指定类的方法中插入一些切面来实现数据统计和观测,因此在线上、预发使用时,请尽量明确需要观测的类、方法以及条件,诊断结束要执行或将增强过的类执行 命令。

options

管道

Arthas支持使用管道对上述命令的结果进行进一步的处理,如sm java.lang.String * | grep 'index'

后台异步任务

当线上出现偶发的问题,比如需要watch某个条件,而这个条件一天可能才会出现一次时,异步后台任务就派上用场了,详情请参考这里

Web Console

通过websocket连接Arthas。

其他特性


参考文章:
1、官网:https://alibaba.github.io/arthas
2、web Console踩坑:https://blog.csdn.net/gaoyib6/article/details/77201711

上一篇 下一篇

猜你喜欢

热点阅读