我需要查看 2 个死锁线程的堆栈来分析情况。它现在JVM
是实时的并且数据在那里,但我需要某种工具来从流程中提取它。我只关心类型堆栈中的 6 个变量String
。任何想法都非常感谢。JVM
版本6_35
,它是一个linux
,JMX
已启用,但我没有profiler/debugger
配置连接。很难复制。
问问题
2735 次
3 回答
3
你不能轻易做到这一点。普通jstack
工具只会转储堆栈。从技术上讲,您可以尝试转储整个堆(使用jmap
),但如果可能的话,寻找这个特定的变量可能会很痛苦。
请注意,出于安全原因,这并不容易实现。堆栈跟踪可以包含凭据或其他敏感数据。
于 2012-11-13T18:17:48.567 回答
0
您可以向该进程发送一个SIGQUIT 信号,它将为您提供转储并保持 VM在具有 Sun/Oracle JVM 的类 Unix 操作系统上运行,IBM 的 JVM 也是如此——不确定输出是否适合您的目的,艰难的。可能类似于jstack
/jmap
在另一个答案中。
于 2012-11-13T18:27:48.223 回答