2 JDK Mission Control

JDK Mission Control (JMC) is a production-time profiling and diagnostics tool. It includes tools to monitor and manage your Java application with very small performance overhead.

JMC's very small performance overhead is a result of its tight integration with the HotSpot VM. JMC functionality is always available on-demand, and its small performance overhead is only in effect while the tools are running. This approach also eliminates the problem of the observer effect, which occurs when monitoring tools alter the execution characteristics of the system. JMC enables you to troubleshoot issues and identify root causes and bottlenecks. These properties make the JMC tool ideal for applications running in production.

JMC consists of the following client applications and plug-ins :
  • JVM Browser shows running Java applications and their JVMs.
  • JMX Console is a mechanism for monitoring and managing JVMs. It connects to a running JVM, collects, displays its characteristics in real time, and enables you to change some of its runtime properties through Managed Beans (MBeans). You can also create rules that trigger on certain events (for example, send an e-mail if the CPU usage by the application reaches 90 percent).

  • Flight Recorder (JFR) is a tool for collecting diagnostic and profiling data about a running Java application. It is integrated into the JVM and causes very small performance overhead, so it can be used in production environments. JFR continuously saves large amounts of data about the running applications. This profiling information includes thread samples, lock profiles, and garbage collection details. JFR presents diagnostic information in logically grouped tables and charts. It enables you to select the range of time and level of detail necessary to focus on the problem. Data collected by JFR can be essential when contacting Oracle support to help diagnose issues with your Java application.

  • jcmd Utility or Diagnostic Commands is used to send diagnostic command requests to the JVM. These requests are useful for managing recordings from Flight Recorder, troubleshooting, and diagnosing JVM and Java applications.
  • Plug-ins help in heap dump analysis and DTrace recording. See Plug-in Details. JMC plug-ins connect to a JVM using the Java Management Extensions (JMX) agent. For more information about JMX, see the JMX Technology Home Page.