The Java Mission Control (JMC) is a new JDK profiling and diagnostics tools platform for HotSpot JVM. It is a tool suite for basic monitoring, managing, and production time profiling and diagnostics with high performance. Java Mission Control minimizes the performance overhead that's usually an issue with profiling tools. This tool is a commercial feature built into the JVM and available at runtime.
The Java Flight Recorder (JFR) is a commercial feature. You can use it for free on developer desktops/laptops, and for evaluation purposes in test, development, and production environments. However, to enable JFR on a production server, you require a commercial license. Using JMC UI for other purposes on the JDK does not require a commercial license.
The Java Mission Control (JMC) consists of Java Management Console (JMX), Java Flight Recorder (JFR), and several other plug-ins downloadable from the tool. The JMX is a tool for monitoring and managing Java applications and the JFR is a profiling tool. Java Mission Control is also available as a set of plug-ins for the Eclipse IDE.
The following topic describes how to troubleshoot with Java Mission Control.
Java Mission Control allows you to perform the following troubleshooting activities:
Java Management console (JMX) connects to a running JVM, collects and displays key characteristics in real time.
Triggers user provided custom actions and rules for JVM, which requires JDK 8.
Experimental plug-ins like - WLS
, DTrace
, JOverflow
and others from JMC tool provide troubleshooting activities.
DTrace
plug-in is an extended DScript
language to produce self describing events. It provides visualization similar to Flight Recorder.
JOverflow
is another plug-in tool for analyzing heap waste (empty/sparse collections), which uses hprof
dumps. It is recommended to use JDK 8 release for optimal use of JOverflow
plug-in.
The Java Flight Recordings (JFR) in Java Mission Control is available to analyze events. The pre-configured tabs allow easy drill down in various areas of common interest, such as, code, memory and gc, threads and IO. The General Events tab and Operative Events tab together allow drilling down further and rapidly homing in on a set of events with certain properties. The Events tab usually have check boxes to only show events in the Operative set.
JFR when used as a plug-in for JMC client presents diagnostic information in logically grouped tables, charts, and dials. It enables you to select the range of time and level of detail necessary to focus on the problem. For more details about JFR, see Java Flight Recorder.
The Java Mission Control plug-ins connect to JVM using Java Management Extensions (JMX) agent. The JMX is a standard API for management and monitoring of resources such as applications, devices, services, and the Java Virtual Machine. For more details about JMX, see Java Management Extensions.
For more details about JMC, see the JMC documentation.