我所理解的Arthas

栏目: Java · 发布时间: 6年前

内容简介:提示这个的原因是错误使用了 exit退出,之前打开过进程[3] 端口仍被占用。如果客户端无操5分钟,session过期后,再次登入选择其它进程也会提示上述错误。类似quit。正确退出命令为:shutdown。使用:与退出有关命令有:
我所理解的Arthas
[ERROR] Target process 17272 is not the process using port 3658, you will connect to an unexpected process. [ERROR] If you still want to attach target process 17272, Try to set a different telnet port by using --telnet-port argument. [ERROR] Or try to shutdown the process 13400 using the telnet port first.

提示这个的原因是错误使用了 exit退出,之前打开过进程[3] 端口仍被占用。如果客户端无操5分钟,session过期后,再次登入选择其它进程也会提示上述错误。类似quit。正确退出命令为:shutdown。

使用: http://localhost:8563/ 可以通过web访问Arthas (客户端)

与退出有关命令有:

  • quit——退出当前 Arthas 客户端,其他 Arthas 客户端不受影响
  • shutdown——关闭 Arthas 服务端,所有 Arthas 客户端全部退出

如上图可见我本地启动了两个进程[3]、 [4] 两个springboot 项目。接下来带大家串一下通过Atrhas的命令,我们能得到什么样的有用信息以及能给我们提供哪些判断依据。

这里先抛出一个问题,就是你为什么要使用arthas,或许是遇到了线上难以定位的问题,又或者其它。带着问题是看,总是能收获一个成串的知识链。

我所理解的Arthas

问题一:这个类从哪个 jar 包加载的?

$ sc

“Search-Class” 的简写,这个命令能搜索出所有已经加载到 JVM 中的 Class 信息. 对于不熟悉的命令在后面添加-h往往能得到更多有用的信息。 贴图仅此一次,后续类似命令不再赘述。

我所理解的Arthas
  • 模糊匹配

比如命令:sc com.sun.proxy.* 可以将全类名前匹配的类搜索出来。

-d 表示: detail

我所理解的Arthas
通过code-source能够得到这个类具体是由哪个jar包加载的。这个在处理 钻石依赖 情况,通常可以用到。

反编译出来的源码高亮展示,更方便定位代码是不是正确的分支,自己代码有没有提交。


以上所述就是小编给大家介绍的《我所理解的Arthas》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Head First Java(第二版·中文版)

Head First Java(第二版·中文版)

Kathy Sierra,Bert Bates 著、杨尊一 编译 张然等 改编 / 杨尊一 / 中国电力出版社 / 2007-2 / 79.00元

《Head First Java》是本完整的面向对象(object-oriented,OO)程序设计和Java的学习指导。此书是根据学习理论所设计的,让你可以从学习程序语言的基础开始一直到包括线程、网络与分布式程序等项目。最重要的,你会学会如何像个面向对象开发者一样去思考。 而且不只是读死书,你还会玩游戏、拼图、解谜题以及以意想不到的方式与Java交互。在这些活动中,你会写出一堆真正的Jav......一起来看看 《Head First Java(第二版·中文版)》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

URL 编码/解码
URL 编码/解码

URL 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器