1104 WebSphere Application Server V8.5 Administration and Configuration Guide for the Full Profile
Creating Java cores
The following steps outline how to create a Java core using two different ways:
Using a command line:
1. Log into the server, which has the application server experiencing the issue.
2. Locate the process ID for the java process of that application server.
3. Issue the command kill -3 PID. Where PID is the process ID of the java process.
Using the administration console:
1. From the Web Administration Console, go to Troubleshooting Java dumps and
cores.
2. Select the application server you want to create a Java core, and click Java core.
By default, the java cores are created in the profile_home directory with the naming
convention of javacore.<YEAR><MONTH><DAY>.<TIME>.<PID>.<SEQUENTIAL>.txt, for example:
javacore.20120628.171251.5424.0001.txt. The exact location of the log file is also shown in
the native_stderr.log log file. Example 31-8 shows this process and syntax.
Example 31-8 Location and naming of core file
JVMDUMP039I Processing dump event "user", detail "" at 2012/06/28 17:12:51 - wait.
JVMDUMP032I JVM requested Java dump using
'/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/javacore.20120628.171251.5424.0001
.txt' in response to an event
JVMDUMP010I Java dump written to
/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/javacore.20120628.171251.5424.0001.
txt
JVMDUMP013I Processed dump event "user", detail "".
It is important that you create a few Java cores in regular intervals to be able to detect if a
thread is still hung or not. By comparing the java core files and matching with warning
messages in the logs, you can detect if a thread is still hung or not and what is the likely
cause.
Diagnosing hung thread issues
To diagnose hung thread issues:
1. After a thread is detected hung or if you suspect that something is hung, the first step is to
immediately take java cores as described in the section “Creating Java cores”. The
minimum number of java cores recommended to take is 3 (with an interval of 2 minutes
from each other).
2. Identify from the SystemOut.log file, what thread is reported as hung. Example 31-9
shows an example of a warning message saying that the thread WebContainer: 0 is hung:
Example 31-9 Thread WebContainer hung warning message
[6/28/12 18:28:19:227 EDT] 00000070 ThreadMonitor W WSVR0605W: Thread
"WebContainer : 0" (000000a1) has been active for 146,658 milliseconds and may
be hung. There is/are 1 thread(s) in total in the server that may be hung.