How to analyze the core dump of IBM JVM

How to Aanalyze core dump of IBM JVM 

In order to analyze a coredump you will need to run the Dump Analyzer plugin from IBM Support Assistant (ISA). The dump report will tell you the details of the JVM that dumped core, the heap contents and the javacore. This will help you determine the culprit component faster.

Running the Dump Analyzer tool outside ISA

There may be some circumstances in which it is useful to be able to run the analyzer outside the ISA environment; for instance if the analysis needs to be incorporated into some existing problem handling workflow.

First locate the jar files containing the analyzer and its dependencies. These can be found by reference to the directory in which ISA installs tools plugins (installDir). On Windows™ this is found under
 Documents and Settings/<user ID>/IBM/ISAv4/applications/eclipse/plugins.

 On Linux™ it is under the user home directory and again in 


There are six .jar files as follows
  • (installDir)/plugins/ number)/dumpAnalyzer.jar
  • (installDir)/plugins/ number)/lib/j9/dtfj-interface.jar
  • (installDir)/plugins/ number)/lib/j9/dtfj.jar
  • (installDir)/plugins/ number)/lib/sov/dtfj.jar
  • (installDir)/plugins/ number)/lib/sov/dtfjsu.jar
  • (installDir)/plugins/ number)/coreAnalyzers.jar
If you have installed extensions to the Dump Analyzer tool (for example the WebSphere™ Application Server modules), you may need to add additional jar files provided by these extensions. Refer to the documentation for each extension for further information about the jar files that they provide.
These jar files can be copied to other platforms and executed there or can be executed on the platform where ISA is installed. If we assume that the current directory is (installDir)/plugins/ number) then the java invocation on Windows is

set CP="dumpAnalyzer.jar;coreAnalyzers.jar"
set BCP="lib/j9/dtfj.jar;lib/j9/dtfj-interface.jar;lib/sov/dtfjsu.jar;lib/sov/dtfj.jar"
java -cp $CP -Xbootclasspath/p:$BCP (dumpName) (options)

Where the dump name should be the name of either a dump which has been processed by jextract (typically * or *.sdff) or a directory which contains dump files. If a directory is given then the analyzer will analyze all the dumps in the directory. The output will be directed to the primary output stream and can then be further redirected using normal operating system mechanisms.
Note that the above invocation ensures that the analyzer will use the latest versions of the DTFJ libraries.

The analyzer allows some options to control the analysis or output format. Typically the options are specified as -[option]:[parameter(s)]
Produces help information for the dump analyzer itself and for any analyzers that are specified.
Control the analysis level where higher numbers generally do more analysis and produce more output. At present the range is from 0 to 3.
Generate a standard header on the output. The header will give the dump name and primary platform characteristics. The default analysis script does this automatically but this option can be useful if another analyzer is requested.
Generate a standard trailer on the output. The trailer will list the analyzers which have been run and summarize the analysis time. The default analysis script does this automatically but this option can be useful if another analyzer is requested.
Control the amount of debug information written to the log. Numbers in the range 0 to 4 produce increasing levels of debug information.
Produces a list of the standard analyzers and gives help information for each of them.
Any other options starting with '-' are silently ignored at present. Any options which do not start with '-' are assumed to be the names of analysis modules to be run.

Post a Comment