Oracle JRockit that is available in the WebLogic Server installation program includes a component called JRockit Flight Recorder (JFR), a performance monitoring and profiling tool. JFR records diagnostic information on a continuous basis, making it always available, even in the wake of catastrophic failure such as a system crash.
JFR maintains a buffer of diagnostics and profiling data, called a flight recording or a JFR file, that you can access whenever you need it. The flight recording functions in a manner similar to an aircraft "black box" in which new data is continuously added and older data is stripped out
JFR provides the following key
benefits:
- Designed to run continuously — When JFR is configured to run full-time, with both JVM and WLDF events captured in the flight recording, diagnostic data is always available at the time an event occurs, including a system crash. This ensures that a record of diagnostic data leading up to the event is available, allowing you to diagnose the event without having to recreate it.
- Comprehensive data — JFR combines data generated by the JRockit Runtime Analyzer and the JRockit Latency Analysis Tool and presents it in one place.
- Integration with event providers — JRockit includes a set of APIs that allow the JFR to monitor additional system components, including WebLogic Server, Oracle Dynamic Monitoring System
·
Real-time
Application Diagnostics and Reporting (RADAR)
RADAR
is the examination of diagnostic data generated during run time when a
particular event occurs for the purposes of understanding the system activity
that preceded the event; for example, system activity occurring moments before
a serious error message is generated. By using the diagnostic capabilities
available in WLDF in conjunction with JRockit Flight Recorder, you can capture
a large amount of system-wide diagnostic data the moment a problem occurs. You
can then leverage the capabilities of JRockit Mission Control to quickly
correlate that event with other system activity and process execution data
within the "snapshot in time" that the JFR file provides, enabling
you to quickly isolate likely causes of the problem.
One
WLDF feature whose usage with JRockit Flight Recorder makes for a powerful
RADAR capability is image notification, which allows you to create a diagnostic
image capture automatically in response to a particular event or error
condition. A diagnostic image capture, which created as the result of an image
notification, automatically includes the JFR file. The JFR file can then be
extracted from the diagnostic image capture and examined immediately in JRockit
Mission Control or stored for later analysis. Image notification, used when
WLDF data is captured by JRockit Flight Recorder, is particularly well suited
for this sort of real-time diagnosis of intermittent problems.
How to start, check and stop jfr:
--> /usr/java/jrockit-28.2.5/bin/jrcmd
3143 start_flightrecording settings=default settings=memory settings=sample
compress=true filename=/project /test.jfr
3143---- is pid of java process, which relates to any managed server of weblogic
Filename: path of jfr file
output looks like:
Recording : id=1 name="WLDFDiagnosticImageRecording" duration=0s dest="/project/test.jfr" compress=false (running)
This is for checking the JFR is started or not for that particular PID(here pid is 3143)
--> /usr/java/jrockit-28.2.5/bin/jrcmd 3143 stop_flightrecording id=X
afer completion of recording , we need to stop JFR , here we need to give id value (for above example we need to give as 1)
we need to give like this:
/usr/java/jrockit-28.2.5/bin/jrcmd 3143 stop_flightrecording id=1