Java thread dump | SIGQUIT send dump into tomcat/logs/catalina.out| jstack
The
SIGQUIT
signal is useful for stopping a process and telling it to create a core dump file.
OpenJDK / Sun JDK
Use
Be sure the
If using OpenJDK or Sun JDK 1.6 or later, using
Use
jps -lv
to find the Java process ID for issuing kill -QUIT
or kill -3
.Be sure the
-Xrs
JVM option is not being used, as it causes SIGQUIT and SIGWAITING signals to be ignored. Running kill -3
sends a SIGQUIT signal to the JVM, so using this option will cause kill -3
to be ignored. See Java Application launcher.If using OpenJDK or Sun JDK 1.6 or later, using
jstack
is an option. This is useful when redirecting standard out to a file is problematic for some reason (e.g. it is not desirable to restart the JVM just to redirect standard out). Execute the following, passing in the Java process ID:jstack -l JAVA_PID > jstack.out
When ‘kill -3’ option is used thread dump is sent to the standard error stream. If you are running your application in tomcat, thread dump will be sent into <TOMCAT_HOME>/logs/catalina.outfile.
Note: To my knowledge this option is supported in most flavours of *nix operating systems (Unix, Linux, HP-UX operating systems).
Comments
Post a Comment