Data visualization

JDK Flight Recorder (JFR) data can be visualized and analyzed by using the JDK Mission Control (JMC) tool, provided by Oracle. JMC provides detailed charts, graphs, and performance metrics, enabling the users to examine system information and event data collected during a JFR recording. It helps users to gain insights into application behavior, identify performance bottlenecks, and monitor overall system health by using high level and convenient visualizations.

For example, the environmental variables metric is listed as shown in the following screenshot.

Figure 1. JMC_env_var
Environment variable

The Method Profiling view is as shown in the following screenshot. This view is based on JFR data and highlights the most active methods during runtime. It shows application methods listed in the decreasing order of CPU consumption, stack traces of each such method and a flame graph to visualize method call hierarchies and execution depth. This view helps developers quickly spot performance bottlenecks, understand application behavior, and trace inefficiencies in the call path, making it valuable for optimizing CPU usage and improving overall application performance.

Figure 2. JFR Method Profiling view
JFR Method Profiling view

The Threads view, as shown in the following screenshot, displays the state and activity of all Java threads during a recording. It helps identify thread contention, blocking, or deadlocks, and lets you analyze thread behavior over time to diagnose performance issues and optimize concurrency in your application.

Figure 3. JFR Threads view
JFR Threads view

The scenarios that were just illustrated are the most common visualizations that critically help in performance problem determination. There are several other scenarios that JMC covers to help gain comprehensive understanding of the workload characteristics. For more information about JMC, see JDK Mission Control User Guide.

The latest version of JMC can be downloaded from JDK Mission Control (JMC) Downloads.