arthas icon indicating copy to clipboard operation
arthas copied to clipboard

arthas能否指定对象watch或者vmtool express?

Open qq1033731787 opened this issue 1 year ago • 5 comments

求问各位大佬

  1. 已知一个对象的内存地址,有办法查看这个对象吗? vmtool只能list出来 不能指定某个内存地址 比如 [java.util.concurrent.CountDownLatch@333f2f09] 我有办法直接查看到333f2f09这个实例吗(而不是通过依赖一层层的找下去)?
  2. watch是这样的 [cost=13.008353ms] result=@ArrayList[ @Object[][isEmpty=false;size=1], @test[test@5fb12998], null, ] 我能在watch的时候指定监听这个5fb12998 内存地址的target吗?

qq1033731787 avatar Sep 20 '24 03:09 qq1033731787

@RaymondLam1 @furaul 大佬求助

qq1033731787 avatar Sep 20 '24 03:09 qq1033731787

@hengyunabc 大佬求助

qq1033731787 avatar Sep 20 '24 08:09 qq1033731787

1,2 都没办法实现。

想要任意查找对象,可以 heapdump,再用 oql 语句来查询。

hengyunabc avatar Sep 23 '24 02:09 hengyunabc

1,2 都没办法实现。

想要任意查找对象,可以 heapdump,再用 oql 语句来查询。

@hengyunabc 感谢大佬回复,再请教下,为什么可以在express中指定匹配target、params、result的一些成员变量,但是却不能指定内存地址?

qq1033731787 avatar Sep 23 '24 03:09 qq1033731787

1,2 都没办法实现。 想要任意查找对象,可以 heapdump,再用 oql 语句来查询。

@hengyunabc 感谢大佬回复,再请教下,为什么可以在express中指定匹配target、params、result的一些成员变量,但是却不能指定内存地址?

arthas本身就是java实现的,java功能没法直接通过hashcode值查找对象

lxyyouxiang123 avatar Oct 12 '24 01:10 lxyyouxiang123