`

三、jstack命令(Java Stack Trace)

阅读更多

1、介绍

jstack用于打印出给定的 java 进程 ID core file 或远程调试服务的 Java 堆栈信息,如果是在 64 位机器上,需要指定选项 "-J-d64" Windows jstack 使用方式只支持以下的这种方式:

jstack [-l] pid

java 程序崩溃生成 core 文件, jstack 工具可以用来获得 core 文件的 java stack native stack 的信息,从而可以轻松地知道 java 程序是如何崩溃和在程序何处发生问题。另外, jstack 工具还可以附属到正在运行的 java 程序中,看到当时运行的 java 程序的 java stack native stack 的信息 如果现在运行的 java 程序呈现 hung 的状态, jstack 是非常有用的。

2、命令格式
jstack [ option ] pid
jstack [ option ] executable core
jstack [ option ] [server-id@]remote-hostname-or-IP

3、常用参数说明

1) o ptions  

executable Java executable from which the core dump was produced.

(可能是产生 core dump java 可执行程序 )

core 将被打印信息的 core dump 文件

remote-hostname-or-IP 远程 debug 服务的主机名或 ip

server-id 唯一 id, 假如一台主机上多个远程 debug 服务 

2)、基本参数:

-F ’jstack [-l] pid’ 没有相应的时候强制打印栈信息

-l长列表 打印关于锁的附加信息 , 例如属于 java.util.concurrent ownable synchronizers 列表 .

-m打印 java native c/c++ 框架的所有栈信息 .

-h | -help打印帮助信息

pid 需要被打印配置信息的 java 进程 id, 可以用 jps 查询 .

4、使用示例

分享到:
评论

相关推荐

    Java线上故障排查方案.pdf

    - jstack(Java Stack Trace)用于生成线程堆栈信息,用于诊断线程问题。 - jinfo(Java Configuration Info)用于显示虚拟机配置信息。 - jstat(JVM Statistics Monitoring Tool)用于监控JVM的统计信息。 通过...

    JAVA JVM内存监控工具总结

    5. **jstack (Stack Trace for Java)** jstack用于生成Java线程的堆栈跟踪,帮助开发者了解线程的状态,如阻塞、等待等,有助于识别死锁和其他线程问题。 6. **JConsole** JConsole是一个图形界面工具,可以直观...

    基于JVM性能监控命令介绍

    jstack(Stack Trace for Java)命令用于显示虚拟机的线程快照,可以帮助开发者和运维人员诊断和解决线程相关的问题。jstack命令的基本语法如下: jstack [options] [vmid] 其中,options是可选参数,vmid是要监控...

    jvm常用命令工具

    jstack - JVM Stack Trace Tool **用途**:显示虚拟机的线程栈信息,帮助分析线程死锁等问题。 **命令格式**: ``` jstack [-l] pid ``` **执行示例**: ``` jstack 3700 ``` **输出解释**:输出当前进程所有...

    JVM命令行监测工具详解

    二、jstack (Java Thread Stack Trace) jstack用于查看JVM的线程堆栈信息,帮助诊断线程阻塞或死锁问题。基本语法: ``` jstack [option] pid ``` 选项通常包括: - `-l`:详细输出,包括锁信息。 例如,`jstack -l...

    Tomcat教程-JVM相关工具.docx

    4. **jstack (Java Thread Stack Trace)**: jstack用于查看Java进程中的所有线程堆栈信息,帮助我们定位线程死锁、阻塞等问题。 5. **jmap (Memory Map for Java)**: jmap用于查看JVM占用物理内存的状态,包括...

    imb jca436

    Jstack全称为Java Thread Stack Trace,它是Java开发人员用于诊断线程问题的重要工具。 Jstack分析主要涉及以下几个方面: 1. **线程堆栈信息**:通过Jstack,我们可以获取到Java虚拟机(JVM)中所有线程的堆栈...

    jvm工具、参数调优&调试技巧

    - **常用命令**:`jstack pid > stacktrace.txt`。 ##### 7. VisualVM:多合一故障处理工具 - **功能**:VisualVM是一个综合性的监控和故障排除工具,支持多种视图,包括CPU使用率、内存使用情况等。 - **特性**: ...

    使用java自带工具监控jvm运行状态

    4. **jstack(Java Thread Stack Trace)** `jstack`工具用于打印Java进程的线程堆栈跟踪,这对于分析死锁、线程阻塞等问题非常有用。通过`jstack <pid>`,你可以看到每个线程的当前状态(如RUNNABLE、WAITING、...

    jvm工具、参数调优&调试技巧.doc

    6. **jstack(Java Thread Stack Trace)**:提供Java线程堆栈信息,用于查看线程状态,分析死锁等问题。 7. **VisualVM**:这是一个集成的故障处理工具,包含多种功能,如性能监视、内存分析、线程分析等,是...

    Java问题定位技术的文档

    其次,堆栈跟踪(Stack Trace)是另一种重要的定位手段。当Java程序抛出异常时,会打印出堆栈跟踪,显示异常发生时的方法调用顺序。这有助于我们追踪到问题的具体代码行,了解异常的起源。此外,通过JDK的`jstack`...

    nstack:生成.NET托管进程线程转储的简单实用程序(类似于Java jstack)

    堆栈生成.NET托管进程线程转储的简单实用程序(类似于Java jstack),即所有托管线程的当前stacktrace。 基于可从获得的Managed Stack Explorer中的代码。 要运行它,请使用nstack.exe <PID> 。 它将所有托管线程的...

    虚拟机监控工具详请.rar

    6. **jstack(Stack Trace for Java)**: jstack用于打印Java线程的堆栈跟踪信息,这对于诊断线程阻塞和死锁问题非常有用。通过`jstack <pid>`,你可以看到每个线程当前所处的方法调用栈,从而找出可能导致问题的...

    详解Java线程堆栈

    package org.ccgogoing.study.stacktrace; public class MyTest { Object obj1 = new Object(); Object obj2 = new Object(); public void fun1() { synchronized (obj1) { fun2(); } } public void fun2...

    java问题定位技术+性能优化

    - **命令行方式**: 使用`jstack`命令可以输出指定Java进程的线程堆栈信息。 - `jstack <pid>`: 输出指定PID的Java进程的所有线程堆栈信息。 - **编程方式**: 通过`Thread.getStackTrace()`方法获取当前线程的堆栈...

    JDK监控和故障处理工具

    - JSTACK(Stack Trace for Java):用于显示虚拟机的线程快照,可以用来定位线程的死锁和性能问题。 - JHAT(JVM Heap Dump Browser):这是一个分析heapdump文件的工具,它能建立一个HTTP/HTML服务器,允许用户在...

Global site tag (gtag.js) - Google Analytics