如何在Windows上的JBoss 4.0.5中进行线程转储

时间:2008-11-21 12:17:39

标签: jboss stack-trace

我在Windows 2003 x64上运行JBoss 4.0.5并想知道是否有任何方法可以转储所有线程?

  • 它盯着FireDaemon所以我没有控制台窗口可以在其中进行ctrl-break。

  • 它在java 1.5下运行,因此jstack将无效。

  • 我尝试了一些名为sentignal.exe的程序,我认为它实际上已经崩溃了JBoss(不确定,但不会再尝试),如果这是因为JBoss在win x64下运行或者因为它运行作为LocalSystem,我只能访问一个我不知道的“普通”用户。它实际上在我的笔记本电脑上运行,但它是32位的,我在那里运行的是与JBoss相同的用户。

有人有其他想法可行吗?

2 个答案:

答案 0 :(得分:1)

我实际上找到了比Gowri更好的方式 建议(在开始实施jsp之后)。

实际上有一种方法可以从服务器信息MBean中的jmx-console转储线程,请参阅Generate a thread dump with the JMX Console

答案 1 :(得分:0)

您可以编写一个执行Thread.getAllStackTraces()的jsp,并以适合的格式打印出stacktracelements。然后在任何时候点击该jsp的URL将为您提供当时所有线程的堆栈转储。