Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
没有jstack的Java线程转储_Java_Linux_Multithreading_Shell_Monitoring - Fatal编程技术网

没有jstack的Java线程转储

没有jstack的Java线程转储,java,linux,multithreading,shell,monitoring,Java,Linux,Multithreading,Shell,Monitoring,我需要从命令行Ubuntu服务器监视java线程状态,以便与Icinga监视器一起使用。但我不能使用jps、jstack和jcmd命令,因为不允许在生产服务器中安装JDK 进程id使用ps命令 # ps -ef| grep [s]tart.jar | cut -d' ' -f6 1201 但我正在努力收集java线程转储。我尝试过kill-3,但没有得到任何输出 还有其他方法可以从命令行收集java线程状态吗?我在执行kill-3时找到了捕获线程转储的方法。 我在jetty server的JA

我需要从命令行Ubuntu服务器监视java线程状态,以便与Icinga监视器一起使用。但我不能使用jps、jstack和jcmd命令,因为不允许在生产服务器中安装JDK

进程id使用ps命令

# ps -ef| grep [s]tart.jar | cut -d' ' -f6
1201
但我正在努力收集java线程转储。我尝试过kill-3,但没有得到任何输出


还有其他方法可以从命令行收集java线程状态吗?

我在执行kill-3时找到了捕获线程转储的方法。 我在jetty server的JAVA_选项中添加了以下选项,这有助于记录指定位置的线程转储

-XX:+UnlockDiagnosticVMOptions -XX:+LogVMOutput -XX:LogFile=/var/log/jetty9/threaddump.log

现在,kill-3命令的执行会在threaddump.log中记录线程转储,该日志用于了解线程的状态。

但无法获得任何输出为什么?没有输出?输出被重定向到您无权访问的文件?@talex,谢谢您的提问。你们的问题让我想到了输出位置,我已经在回答部分写了。谢谢