Continuous Monitoring with JDK Flight Recorder
summary
JDK Flight Recorder runs always-on inside the JVM, records events to dense .jfr files with <1% overhead and uses CPU ticks and pooled stack traces for cheap timestamps and durations. Applications add events by extending jdk.jfr.Event and annotating fields; defaults use thresholds (examples: GC pauses >10ms, slow requests >250–500ms). Tools: jcmd to start/dump, jfr tool to inspect, JFR streaming API (RecordingStream) for in-process or remote streaming (jdk14/16), and unit-test checks (finalizer detection). JDK 20 ships ~180 built-in events.
AI-written summary · about
chapters (16)
- 0:00Introduction to JFR
- 2:57JFR features and overview
- 6:06Understanding JFR events
- 8:31Creating custom events
- 12:00Annotating events
- 15:31Event configuration
- 17:35Built-in JVM events
- 20:02Filtering and configuration
- 22:35Performance overhead
- 27:47Enabling and running JFR
- 30:08JFR command line tools
- 34:22Event streaming API
- 38:40Complex event analysis
- 41:43Remote JFR streaming
- 43:22JFR for unit testing
- 45:02Summary and resources
related talks
01h 09mContinuous Monitoring With JDK Flight Recorder (JFR)
42mContinuous Monitoring with JDK Flight Recorder
39mProgrammer's Guide to JDK Flight Recorder
56mTaking Off With #JDK #FlightRecorder
42mProfiling and monitoring with the JDK
39mProfiling and Monitoring with the JDK
18mContinuous Monitoring w/ JDK Flight Recorder (JFR)
45mAnalyzing Safe Flights, and Firey Wrecks with JDK Flight Recorder
