`

采用jca分析javacore文件示例

    博客分类:
  • java
阅读更多

今天帮助项目组分析websphere 7下的线程挂起问题,现象如下:

 

后台日志抛出类似下面的异常:

线程“WebContainer : 6”(0000001f)已保持活动状态 621077 毫秒,此线程可能已挂起。在服务器中共有 1 个线程可能处于挂起状态。

 

问题分析:

线程或数据库存在锁的现象,决定采用jca分析工具分析javacore文件,看哪个线程有锁。

 

问题排查过程:

websphere服务器端(suse Linux)执行如下命令:

ps -ef|grep java

 

查找webpshere的进程,再调用:

kill -3 pid

 

动态生成一个javacore 文件,比如: /opt/IBM/WebSphere/AppServer1/profiles/AppSrv01目录下的生成了javacore.20120613.084258.15830.0001.txt文件

(此kill命令不会造成在线业务系统停止,应用服务器不需要重新启动)

 

然后采用jca分析工具,我采用的是jca401的版本,进入dos环境,执行:

 java -Xmx200m -jar jca401.jar

 

会打开图形界面,调入javacore文件,进行分析发现有线程处于blocked状态,点击toolbar中的“Thread Detail”图标,能够看到具体的线程状态及明细,定位blocked的线程,查看明细,本例中发现该线程blocked by一个web container线程,该线程的调用堆栈如下: 

 

t oracle/jdbc/driver/OracleStatement.executeQuery(OracleStatement.java:1313(Compiled Code))
at com/ibm/ws/rsadapter/jdbc/WSJdbcStatement.pmiExecuteQuery(WSJdbcStatement.java:1621(Compiled Code))
at com/ibm/ws/rsadapter/jdbc/WSJdbcStatement.executeQuery(WSJdbcStatement.java:925(Compiled Code))
at com/itown/framework/persistence/SingleDBHelper.executeQuery(SingleDBHelper.java:116(Compiled Code))
at com/itown/iesap/dbatch/service/InspFirstTrialSqlSearchService.findExcept(InspFirstTrialSqlSearchService.java:457(Compiled Code))
at com/itown/iesap/dbatch/service/InspFirstTrialSqlSearchService.execute(InspFirstTrialSqlSearchService.java:526(Compiled Code))
at com/itown/iesap/common/BaseService.service(BaseService.java:12(Compiled Code))

 

jca工具截图: 




 
 

 

缩小了问题范围,最终得以排查问题。

 

 

  • 大小: 276.3 KB
分享到:
评论
1 楼 NeverGiveUpToChange 2013-01-15  
学习!

相关推荐

    jca javacore分析工具

    JCA(Java Core Analysis)工具就是用于解析和分析这些文件的专业软件。 1. **Java Core (javacore) 文件**: Java Core文件是由JVM生成的一种日志文件,记录了JVM在特定时刻的状态,包括线程堆栈信息、内存使用...

    jca-分析javacore和dump.zip

    在"jca-分析javacore和dump.zip"这个压缩包中,包含了一个名为"jca457.jar"的JCA工具和一个"执行步骤.txt"的文本文件,后者应该是指导如何使用该工具的说明。 **Java Core (javacore) 分析** Java Core,通常简称为...

    IBM WEBSPHERE javacore分析工具jca

    IBM WebSphere 作为一款强大的企业级应用服务器,其在运行过程中可能会遇到各种问题,如内存溢出、...而`jca.jar`可能是包含JCA相关辅助工具或库的文件,它可能用于配合`jca_javacore.bat`进行更深入的JCA问题分析。

    javacore和dump分析工具

    javacore.txt文件用jca打开,heapdump.phd文件用ha打开。 Heap dump 文件是一个二进制文件,它保存了某一时刻在 Java 堆中所有对象的状态。这个文件最重要的作用就是分析 Java 堆内存泄露问题,heap analyzer,MAT ...

    javacore分析工具

    `jca412.jar`可能是一个包含Java Core Analysis工具的库文件,用于解析和展示JavaCore日志文件。这种工具通常会提供图形界面或命令行选项,便于用户查看和理解分析结果。 `jca.properties.xml`可能包含了Java Core ...

    IBM JVM javaCore 分析工具

    IBM JVM 分析工具,JCA,javaCore查看工具

    was内存溢出 javacore分析工具jca 456

    JCA(Java Core Analysis)456是一款专门用于解析和分析Javacore文件的工具,它能帮助开发者更高效地理解和解决WebSphere中的内存问题。JCA 456提供了丰富的功能,包括: 1. **线程分析**:展示JVM中的所有线程状态...

    javacore分析工具jca36

    通过使用JCA36,用户可以轻松地捕获和分析Java虚拟机(JVM)的核心转储文件(也称为javacore文件),这些文件包含了JVM在特定时刻的内存使用、线程状态、类加载和垃圾收集等关键信息。 JCA36的主要功能包括: 1. *...

    jca15.zip-分析javacore日志

    运行命令可能类似于`java -jar jca15.jar <javacore.log>`,其中`<javacore.log>`是待分析的日志文件路径。 `readme15.zip`文件通常包含工具的使用说明,可能是Markdown或HTML格式,详细解释如何运行和解读分析结果...

    was内存溢出 javacore分析工具jca 401

    JCA(Java Core Analysis)工具则是一款专门用来解析和分析javacore文件的工具,它能够帮助开发者深入理解内存溢出的问题,找出可能的内存泄露源,以及线程阻塞等问题。JCA401可能是该工具的一个特定版本,具有特定...

    websphere javacore 分析工具 jca412

    【描述】"Websphere Javacore 分析工具 JCA412"强调的是利用特定工具来解析Javacore文件,特别是针对JCA(Java Connector Architecture)4.1.2版本的问题进行深入分析。JCA是一种标准,允许Java应用程序与企业信息...

    javacore\heapdump文件分析工具

    `jca`(Java Core Analyzer)是专门用于分析`javacore`文件的工具,它可以提供更直观和详细的分析报告,帮助开发者定位问题原因。 而`heapdump`文件则是JVM在运行过程中,通过Java的`jmap`命令或者`VisualVM`等工具...

    jca分析工具.zip

    JCA全称为Java Core Analysis,是一款用于分析Java应用程序的工具,特别适用于处理JavaCore文件和Thread dump文件。它能够帮助开发者识别并解决应用程序中的性能瓶颈、死锁以及其他线程相关问题。通过解析这些文件,...

    websphere javacore文件分析工具

    websphere在内存溢出的时候会产生javacore文件,分析这个文件可以看出cpu的使用情况。

    JavaCore和HeapDump分析工具

    在分析JavaCore和HeapDump时,这些jar文件可能包含应用程序使用的类和方法,对于理解程序运行过程中的行为至关重要。例如,如果在JavaCore或HeapDump中发现特定的类或方法占用资源过多,可以追溯到这些jar文件中查找...

    java线程堆栈分析工具jca457.jar

    java线程堆栈分析工具jca466.jar;堆内存分析工具Memory Analyzer;分析内存泄露产生的javacore文件,以便于定位blocked线程

Global site tag (gtag.js) - Google Analytics