When a JVM crash occurs, you need to be notified know as soon as possible. Knowing about a A JVM crash is critical because it may be a sign of a severe runtime problem in an application. Furthermore, you may want to take remediation steps when a crash event has occurred.
JVM Crash is an event type implemented as part of JVM Crash Guard that can provide you with critical information for handling JVM crashes.
The following image shows the Events window with two JVM Crash events:
Double-click the JVM Crash event on the Events window to see more information on troubleshooting the cause of the JVM crash.
To perform root-cause analysis and troubleshooting, and often call for immediate remediation steps.
This topic describes how to use AppDynamics JVM Crash Guard, which you can use to monitor and remediate JVM crashes.
Viewing JVM Crash Information
When a JVM crash occurs, a corresponding event type is generated in AppDynamics. The following screenshot shows JVM Crash events in the AppDynamics UI:
To analyze and troubleshoot the crash:
- In the Events window, double-click the JVM Crash of interest.
- Examine any logs associated with the JVM Crash event. (The local log folder is determined by the type of JVM and how it is configured. For more information, refer to the documentation for the specific JVM.)
The JVM Crash window also displays information about actions executed as a result of the crash. These are actions that you specify when creating the policy that is triggered by a JVM crash event. See Policies for more information.
The JVM Crash event captures details include the following information:
- crash reason
- host name
- IP address
- process ID
- application name
- node name
- tier name
In the Crash Reason details field of the JVM Crash Details tab, the JVM Crash details indicate the root cause of the crash if available; for example, a java.lang.OutOfMemoryError or Segmentation Fault.
To facilitate the discovery and display of the reason for the JVM crash, JVM Crash Guard provides full support forsupports:
- Hotspot JVM error log analysis
- IBM JVM System Dump log analysis
- Jrockit JVM error log analysis
JVM Crash Guard works with the Standalone Machine Agent to trigger an AppDynamics policy when a JVM Crash event occurs. You must therefore have a Machine Agent installed and enabled on the machine that you want to monitor for JVM crashes. Additionally:
- On Windows, the Machine Agent must run in Administrator root mode.
- On Linux, JVM Crash Guard requires that the Machine Agent user be able to read all the processes in /proc/*. This may be the ‘root’ user or another user with this privilege.