Thread dumps are often needed to diagnose the application performance issue like deadlocks, hung threads, and bottlenecks in Java threads.

Taking Thread Dumps in WebSphere

It’s recommended to take multiple thread dumps in 5-8 seconds. You can use any of the following methods to generate it.

1. Using wsadmin.sh

Login into WAS Server Go to profile and bin folder Execute wsadmin.sh file

Set JVM name in a variable

Note: server1 is, for example. Change this to your actual JVM name. This will generate a thread dump and will be available under the profile path.

2. Using kill

Find the JVM process ID using ps command Execute kill -3 $PID

You will find the dump in the profile path.

3. Using the WebSphere Administrative Console

Login into DMGR Console Navigate to Troubleshooting at the left side Select the JVM and click on “Java core.”

Once you have the thread dump, you can use the following tools to analyze them.

Analyzing WebSphere Thread Dumps

Analyzing dumps are always challenging, and following FREE tools will help you.

IBM Thread Dump Analyzer (TDA)

Using IBM TDA, you can identify hangs, deadlocks, and bottlenecks in Java threads. You can download IBM TDA from here. It’s just the jar file, and once downloaded, you can execute the following to start the GUI.

Click on File » Open Thread Dumps Browse the folder and select the dump you wish to analyze

It will take a few seconds, and you are all set to do the following analysis

CPU usage Memory segment User process resources limit Command-line argument Environment variable Shared class cache Native memory Thread status Method

All are available under the “Analysis” menu. A quick look at thread status analysis

So go through the analysis you are looking for have fun with IBM TDA. So now, you should be able to generate and analyze the thread dumps for application troubleshooting. There is more analyzer explained here.

How to Generate and Analyse WebSphere Thread Dump  - 17How to Generate and Analyse WebSphere Thread Dump  - 90How to Generate and Analyse WebSphere Thread Dump  - 11How to Generate and Analyse WebSphere Thread Dump  - 45How to Generate and Analyse WebSphere Thread Dump  - 95How to Generate and Analyse WebSphere Thread Dump  - 15How to Generate and Analyse WebSphere Thread Dump  - 57How to Generate and Analyse WebSphere Thread Dump  - 25How to Generate and Analyse WebSphere Thread Dump  - 19How to Generate and Analyse WebSphere Thread Dump  - 49How to Generate and Analyse WebSphere Thread Dump  - 28How to Generate and Analyse WebSphere Thread Dump  - 28How to Generate and Analyse WebSphere Thread Dump  - 92How to Generate and Analyse WebSphere Thread Dump  - 94How to Generate and Analyse WebSphere Thread Dump  - 20How to Generate and Analyse WebSphere Thread Dump  - 39How to Generate and Analyse WebSphere Thread Dump  - 19How to Generate and Analyse WebSphere Thread Dump  - 65How to Generate and Analyse WebSphere Thread Dump  - 29How to Generate and Analyse WebSphere Thread Dump  - 78How to Generate and Analyse WebSphere Thread Dump  - 85How to Generate and Analyse WebSphere Thread Dump  - 42How to Generate and Analyse WebSphere Thread Dump  - 24How to Generate and Analyse WebSphere Thread Dump  - 88How to Generate and Analyse WebSphere Thread Dump  - 4How to Generate and Analyse WebSphere Thread Dump  - 92