关于arthas的一个比较有用的使用方式

关于arthas的一个比较有用的使用方式

💡 原文中文,约1800字,阅读约需5分钟。
📝

内容提要

Arthas是阿里开源的Java诊断工具,能够挂载到Spring Boot应用中,便于问题排查。通过vmtool命令,可以查询内存对象并执行方法,验证返回值。示例包括获取DemoServiceImpl实例并调用queryName方法,支持JSON序列化等功能。

🎯

关键要点

  • Arthas是阿里开源的Java诊断工具,能够挂载到Spring Boot应用中,便于问题排查。
  • 通过vmtool命令,可以查询内存对象并执行方法,验证返回值。
  • 示例中展示了如何获取DemoServiceImpl实例并调用queryName方法。
  • vmtool命令支持多种操作,包括查询内存对象和强制GC等功能。
  • 可以通过表达式执行对象的方法,并获取返回结果。
  • 支持JSON序列化功能,可以将返回结果转换为JSON格式。
  • 需要注意类和静态方法的调用规则,可能需要指定类加载器。

延伸问答

Arthas是什么工具,它的主要功能是什么?

Arthas是阿里开源的Java诊断工具,主要用于挂载到Spring Boot应用中,便于问题排查。

如何使用vmtool命令查询内存对象?

可以使用vmtool命令,指定action为getInstances,并提供类名和表达式来查询内存对象。

在Arthas中如何调用DemoServiceImpl的queryName方法?

可以通过vmtool命令,使用表达式'instances[0].queryName("1")'来调用DemoServiceImpl的queryName方法。

Arthas支持哪些操作?

Arthas支持多种操作,包括查询内存对象、强制GC、和中断线程等。

如何将返回结果进行JSON序列化?

可以使用vmtool命令,结合JSON类的方法进行序列化,例如使用'@com.alibaba.fastjson.JSON@toJSONString(...)'。

在使用Arthas时需要注意哪些调用规则?

需要注意类和静态方法的调用规则,可能需要指定类加载器以确保正确执行。

➡️

继续阅读