< prev index next >

src/jdk.jcmd/share/man/jstack.1

Print this page

        

*** 1,6 **** ! .\" Copyright (c) 1994, 2019, Oracle and/or its affiliates. All rights reserved. .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. .\" .\" This code is free software; you can redistribute it and/or modify it .\" under the terms of the GNU General Public License version 2 only, as .\" published by the Free Software Foundation. --- 1,7 ---- ! '\" t ! .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved. .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. .\" .\" This code is free software; you can redistribute it and/or modify it .\" under the terms of the GNU General Public License version 2 only, as .\" published by the Free Software Foundation.
*** 17,91 **** .\" .\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA .\" or visit www.oracle.com if you need additional information or have any .\" questions. .\" ! .\" Automatically generated by Pandoc 2.3.1 ! .\" ! .TH "JSTACK" "1" "2018" "JDK 13" "JDK Commands" ! .hy ! .SH NAME ! .PP ! jstack \- print Java stack traces of Java threads for a specified Java ! process ! .SH SYNOPSIS ! .PP ! \f[B]Note:\f[R] This command is experimental\ and unsupported. ! .PP ! \f[CB]jstack\f[R] [\f[I]options\f[R]] \f[I]pid\f[R] .TP ! .B \f[I]options\f[R] ! This represents the \f[CB]jstack\f[R] command\-line options. ! See \f[B]Options for the jstack Command\f[R]. ! .RS ! .RE .TP ! .B \f[I]pid\f[R] ! The process ID for which the stack trace is printed. ! The process must be a Java process. ! To get a list of Java processes running on a machine, use either the ! \f[CB]ps\f[R] command or, if the JVM processes are not running in a ! separate docker instance, the \f[B]jps\f[R] command. ! .RS ! .PP ! \f[B]Note:\f[R] JDK 10 has added support for using the Attach API when ! attaching to Java processes running in a separate docker process. ! However, the \f[CB]jps\f[R] command will not list the JVM processes that ! are running in a separate docker instance. ! If you are trying to connect a Linux host with a Virtual Machine that is ! in a docker container, you must use tools such as \f[CB]ps\f[R] to look up ! the PID of the JVM. ! .RE ! .SH DESCRIPTION ! .PP ! The \f[CB]jstack\f[R] command prints Java stack traces of Java threads for ! a specified Java process. ! For each Java frame, the full class name, method name, byte code index ! (BCI), and line number, when available, are printed. ! C++ mangled names aren\[aq]t demangled. ! To demangle C++ names, the output of this command can be piped to ! \f[CB]c++filt\f[R]. ! When the specified process is running on a 64\-bit JVM, you might need ! to specify the \f[CB]\-J\-d64\f[R] option, for example: ! \f[CB]jstack\ \-J\-d64\f[R] \f[I]pid\f[R]. ! .PP ! \f[B]Note:\f[R] ! .PP ! This command is unsupported and might not be available in future ! releases of the JDK. ! In Windows Systems where the \f[CB]dbgeng.dll\f[R] file isn\[aq]t present, ! the Debugging Tools for Windows must be installed so that these tools ! work. ! The \f[CB]PATH\f[R] environment variable needs to contain the location of ! the \f[CB]jvm.dll\f[R] that is used by the target process, or the location ! from which the core dump file was produced. ! .SH OPTIONS FOR THE JSTACK COMMAND .TP ! .B \f[CB]\-l\f[R] ! The long listing option prints additional information about locks. ! .RS ! .RE .TP ! .B \f[CB]\-h\f[R] or \f[CB]\-help\f[R] ! Prints a help message. ! .RS .RE --- 18,137 ---- .\" .\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA .\" or visit www.oracle.com if you need additional information or have any .\" questions. .\" ! .\" Arch: generic ! .\" Software: JDK 8 ! .\" Date: 21 November 2013 ! .\" SectDesc: Troubleshooting Tools ! .\" Title: jstack.1 ! .\" ! .if n .pl 99999 ! .TH jstack 1 "21 November 2013" "JDK 8" "Troubleshooting Tools" ! .\" ----------------------------------------------------------------- ! .\" * Define some portability stuff ! .\" ----------------------------------------------------------------- ! .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! .\" http://bugs.debian.org/507673 ! .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html ! .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! .ie \n(.g .ds Aq \(aq ! .el .ds Aq ' ! .\" ----------------------------------------------------------------- ! .\" * set default formatting ! .\" ----------------------------------------------------------------- ! .\" disable hyphenation ! .nh ! .\" disable justification (adjust text to left margin only) ! .ad l ! .\" ----------------------------------------------------------------- ! .\" * MAIN CONTENT STARTS HERE * ! .\" ----------------------------------------------------------------- ! ! .SH NAME ! jstack \- Prints Java thread stack traces for a Java process, core file, or remote debug server\&. This command is experimental and unsupported\&. ! .SH SYNOPSIS ! .sp ! .nf ! ! \fBjstack\fR [ \fIoptions\fR ] \fIpid\fR ! .fi ! .nf ! ! \fBjstack\fR [ \fIoptions\fR ] \fIexecutable\fR \fIcore\fR ! .fi ! .nf ! ! \fBjstack\fR [ \fIoptions\fR ] [ \fIserver\-id\fR@ ] \fIremote\-hostname\-or\-IP\fR ! .fi ! .sp ! .TP ! \fIoptions\fR ! The command-line options\&. See Options\&. ! .TP ! \fIpid\fR ! The process ID for which the stack trace is printed\&. The process must be a Java process\&. To get a list of Java processes running on a machine, use the jps(1) command\&. ! .TP ! \fIexecutable\fR ! The Java executable from which the core dump was produced\&. ! .TP ! \fIcore\fR ! The core file for which the stack trace is to be printed\&. ! .TP ! \fIremote-hostname-or-IP\fR ! The remote debug server \f3hostname\fR or \f3IP\fR address\&. See jsadebugd(1)\&. ! .TP ! \fIserver-id\fR ! An optional unique ID to use when multiple debug servers are running on the same remote host\&. ! .SH DESCRIPTION ! The \f3jstack\fR command prints Java stack traces of Java threads for a specified Java process, core file, or remote debug server\&. For each Java frame, the full class name, method name, byte code index (BCI), and line number, when available, are printed\&. With the \f3-m\fR option, the \f3jstack\fR command prints both Java and native frames of all threads with the program counter (PC)\&. For each native frame, the closest native symbol to PC, when available, is printed\&. C++ mangled names are not demangled\&. To demangle C++ names, the output of this command can be piped to \f3c++filt\fR\&. When the specified process is running on a 64-bit Java Virtual Machine, you might need to specify the \f3-J-d64\fR option, for example: \f3jstack -J-d64 -m pid\fR\&. ! .PP ! \fINote:\fR This utility is unsupported and might not be available in future release of the JDK\&. In Windows Systems where the dbgeng\&.dll file is not present, Debugging Tools For Windows must be installed so these tools work\&. The \f3PATH\fR environment variable needs to contain the location of the jvm\&.dll that is used by the target process, or the location from which the crash dump file was produced\&. For example: ! .sp ! .nf ! \f3set PATH=<jdk>\ejre\ebin\eclient;%PATH%\fP ! .fi ! .nf ! \f3\fP ! .fi ! .sp ! .SH OPTIONS .TP ! -F ! .br ! Force a stack dump when \f3jstack\fR [\f3-l\fR] \f3pid\fR does not respond\&. .TP ! -l ! .br ! Long listing\&. Prints additional information about locks such as a list of owned \f3java\&.util\&.concurrent\fR ownable synchronizers\&. See the \f3AbstractOwnableSynchronizer\fR class description at http://docs\&.oracle\&.com/javase/8/docs/api/java/util/concurrent/locks/AbstractOwnableSynchronizer\&.html .TP ! -m ! .br ! Prints a mixed mode stack trace that has both Java and native C/C++ frames\&. ! .TP ! -h ! .br ! Prints a help message\&. .TP ! -help ! .br ! Prints a help message\&. ! .SH KNOWN\ BUGS ! In mixed mode stack trace, the \f3-m\fR option does not work with the remote debug server\&. ! .SH SEE\ ALSO ! .TP 0.2i ! \(bu ! pstack(1) ! .TP 0.2i ! \(bu ! C++filt(1) ! .TP 0.2i ! \(bu ! jps(1) ! .TP 0.2i ! \(bu ! jsadebugd(1) .RE + .br + 'pl 8.5i + 'bp
< prev index next >