Did you ever wonder whether JFR timestamps use the same time source as System.nanoTime? Come down the rabbit hole with me!
-
Firefox Profiler Beyond the Web
Ever wanted to profile your application directly from your IDE? Here comes the Java JFR Profiler plugin, an open-source plugin for IntelliJ!
-
JFR Event Collection
Ever wondered what all the JDK Flight Recorder events are, in which JDK versions they are supported, and what examples of an event looks like?
-
OpenJDK and the Future of Production Profiling
The JDK Flight Recorder design philosophy is to be the one-stop-shop production profiler for OpenJDK.
JFR needs to be able to do various kinds of profiling, all at the same time, at a low overhead. It also needs to be able to run continuously for as long as someone is interested in the data. Potentially always.
Now, with changes in the Java (and the computing) ecosystem, JFR has some loom-ing challenges to remain relevant for the future.
-
Towards Continuous Performance Regression Testing
JfrUnit is an extension for JUnit 5 which integrates Flight Recorder into unit tests.
It makes it straightforward to initiate a JFR recording for a given set of event types, execute some test routine, and then assert the JFR events which should have been produced.
Stay tuned for next parts in this series, where we’ll explore how to trace the SQL statements executed by an application using the JMC Agent and assert these query events using JfrUnit.
-
A Closer Look at JFR Streaming
Since JDK 14, there is a new kid on the block – Java Flight Recorder streaming, which enables developers to subscribe to JFR data.
It is a feature allowing a developer to subscribe to select JFR data and to decide what to do with that data in the host process. JFR events can also be consumed from a separate process by pointing to the file repo of a separate JVM process – the mechanism is the same.