Java Mission Control and Java Flight Recorder are relatively new tools
that have extended greatly the diagnostics capabilities of the Java
platform. They allow collecting an impressive amount of detailed runtime
information about the JVM, with minimum performance impact, in a way
that would have been hard to imagine a few years ago.
Control is basically a set of tools that enables efficient and detailed
analysis of the extensive data provided by Java Flight Recorder, which
is the entity that lives in the JVM collecting a wide variety of runtime
information. Java Flight Recorder used to be tightly integrated with
the JRockit JVM, although it’s been bundled with the HotSpot JVM since
Java 7 Update 40 release.
There is plenty of information out there
about how to use both JMC and JFR in the form of blogs, videos and
technical documentation, so I won’t cover that in much detail. The
purpose of this article is to give a hint to developers unfamiliar with
JFR on how to diagnose performance issues associated to an application
flow triggered from the front-end.
of the most common scenarios that engineers working on applications
deployed in WebLogic servers need to deal with is to diagnose a web
application with poor performance.
Often, users complain about
sluggishness after they click on a specific link of the application or
as part of a specific operation. Also, it is common that these
performance issues are not constant and happen rather randomly or
Normally, getting a full picture of what could
have gone wrong, from the front-end to the middle or back-end layers,
requires a thorough analysis of all involved components. Depending on
the logging capabilities or integrated diagnostic frameworks used by the
application, the difficulty of debugging this way may vary, but in
general, it becomes time consuming at the least.
logging is only used, the debugger needs to correlate evidences of
events and their timestamps in the log files from different components
in order to get an idea of any potential bottlenecks.
capturing fairly detailed performance information about an application
is usually expensive, and typically requires enabling logging
capabilities or using profiling tools based on the JVMPI/JVMTI
interfaces, that may have a negative impact in performance as well.
Java Mission Control and Java Flight Recorder have made things much
easier for everybody and have become the Holy Grail of Java application
profiling, making it feasible to profile applications with virtually no
performance degradation, which wasn’t possible a few years ago.
Capturing WebLogic event data with Java Flight Recorder
is possible to integrate WebLogic and the Java Flight Recorder to
collect event data from WebLogic containers, through the WebLogic
Diagnostic Framework (WLDF). The overhead of enabling JFR and configure
WLDF to generate WebLogic Server Diagnostics to be captured by JFR is
minimal, and makes it ideal to be used in full-time basis, especially
with production environments where it adds the greatest value.
Java Flight Recorder works with the concepts of events, which is the representation of a piece of data related to something that happened at a specific point in time. Read the complete article here.
WebLogic Partner Community
For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.
Blog Twitter LinkedIn Forum Wiki