IBM Support

Mustgather: Gathering data for hang or performance problems on Windows

Technote (troubleshooting)


Problem(Abstract)

If your Java application experiences perceived hang or performance problems on Windows operating system, there are a number of diagnostic data files that are useful for diagnosing the problem. This mustgather document describes about the diagnostic data files to be collected and the procedure to collect the same.

Resolving the problem

The following set of diagnostic data files need to be collected manually during the time of hang or performance problems perceive in your java application:
1. Javacores
2. Core dumps
3. Verbose GC logs (native_stderr.log)
4. Process logs
5. Paging usage logs
6. Processor monitor logs
7. CPU Profiling logs (TProf logs in case of performance problems)
8. Netstat logs
9. Health Center logs (In case of performance problems)

For these diagnostic data files to be created, check that the system is configured correctly as per setup document.

Please collect the diagnostic data files manually during the time of hang or performance problems perceive in your java application as per the below steps:

1. Generate at least three javacores and core dumps by using one of the following methods:

a)Use the key sequence Ctrl-Break in a console window.
b)Use the WSAdmin command if you are running IBM® WebSphere® Application Server.
c)If you have the MKS Toolkit installed, use the command:
kill -3 [PID_of_problem_JVM]
d) Use Windows Task Manager to manually generate the dumps

There needs to be 2 or 3 minutes time interval in between each set of dumps(javacore and core dump) generated. Otherwise spread the time interval across the issue time and generate the above set of diagnostic data files.

Please note that all the javacores and the core dumps generated can be found in the current path and the names of them will follow the below format:
Javacore : javacore.<time stamp>.<id>.txt
Core dump : core.<time stamp>.<id>.dmp

For Java 6 and 5 SDK releases,

Run the JExtract tool against the generated core dump using the following command:
<installpath>/jre/bin/jextract [coredump]

For 64bit JVM enabled with -Xcompressedrefs option, please use
<installpath>/jre/bin/jextract -J-Xcompressedrefs [coredump]

Save the resulting archive file, which has a name in the format of
core.<time stamp>.<id>.dmp.zip

From Java™ 7 SDKs on Windows platforms, you do not need to run the jextract utility.

In case, if the core dump is not generated as expected using -Xdump option as in setup, please refer and use the Microsoft ADPlus tool to generate the core dump at the time of hang as appropriate and send us for diagnosing the problem.

2. Collect Verbose Garbage Collector data. This data is in the location specified during setup. Alternatively, the data is sent to the stderr output.

3. Collect process size monitoring data. The data is in the location specified during setup.

4. Collect paging size usage data. The data is in the location specified during setup.

5. Collect CPU monitoring (perfmon) data. The data is in the location specified during setup.

6. Run the tprof tool and profile the java application during the time of performance problems. The tprof profile data is written to the location specified in tprof support document.


7. Collect the netstat log containing the snapshot of network activities, by using the following command:
netstat -an > netstat1.out

Please collect multiple netstat logs during the time of hang or performance problems in your Java application.

8. In case of performance problems, run the Health Center tool and profile the application as specified in setup. Please refer the IBM Health Center Information center document for more information.

After collecting all the above diagnostic data files, you can submit them for help with diagnosing the problem.

Document information

More support for: Runtimes for Java Technology
Hangs/Performance Degradation

Software version: 5.0, 6.0, 6.1, 7.0, 7.1, 8.0

Operating system(s): Windows

Software edition: J2SE

Reference #: 1222656

Modified date: 07 March 2017