IBM Support

How to generate javacores/thread dumps, heapdumps and system cores for the WebSphere Application Server Liberty profile

Question & Answer


Question

This technote explains how to generate javacores/thread dumps, heapdumps, and system core files which can be used to troubleshoot problems such as hangs, memory issues, and performance on the WebSphere Application Server Liberty profile.

Answer

Creating dump files (javacores/thread dumps, heapdumps and system core dumps) on-demand on the Liberty profile JVM is accomplished by the following command:

server javadump <server_name> --include=<option(s)>

options include:
thread - javacore or thread dump (javacore using IBM JDK, thread dump using Oracle JDK)
heap - heapdump and a javacore/thread dump
system - system core dump and a javacore/thread dump
** Both heap and system also create a javacore/thread dump

Example:
Assume <server_name> = server1

  • To get just a javacore/thread dump:

  • server javadump server1
  • To get a javacore/thread dump and a heapdump:

  • server javadump server1 --include=heap
  • To get a javacore/thread dump and a system core dump:

  • server javadump server1 --include=system

** You can use any combination but probably do not want to use both heap and system for the same issue.

** Notes:
1) On AIX, Linux, Solaris and HP-UX, the command "kill -3 <pid>" will create a javacore or thread dump
Note: <pid> - the current process ID of the JVM. Example: If the current process ID is 2345, then run the command: kill -3 2345

2) On Windows systems, "kill -3" is not an option. You can create system core dumps using the Windows Task Manager "Create dump file" function, but since this procedure does not ensure that the JVM will stop all threads, there is a small possibility that the dumps will be missing data, such as thread stacks.

Notes:
  • Dump files will be located under the following directory:
    <wlp.install.directory>/usr/servers/<serverName>
  • Thread dumps for non-IBM JDK's will be written to:
    <wlp.install.directory>/usr/servers/<serverName>/logs/console.log file.
  • If using an IBM JDK, you may be asked to process the system core dump with jextract. If so, follow the instructions in the technote "How to process an IBM SDK core dump with jextract"
http://www.IBM.com/support/docview.wss?uid=swg21577379
** This will not work for a system core created by a non-IBM JDK

[{"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"General","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"9.0;8.5","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
15 June 2018

UID

swg21597830