JDK Flight Recorder21 articles
Do you trust profilers? I once did too. Here I describe why you should take the results of profilers with a grain of salt.
JFR Timestamps and System.nanoTime
Did you ever wonder whether JFR timestamps use the same time source as System.nanoTime? Come down the rabbit hole with me!
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?
Java Profiling Overview
When I ask Java developers whether they profile, the answer is usually “no”. A reason is the lack of info and knowledge for everyday developers.
Thinking About Massive Throughput? Meet Virtual Threads!
Virtual threads not only help to increase application throughput by running a much bigger number of concurrent tasks together, they also provide a framework to refactor already existing code.
Monitoring Spring Boot Applications (Part 1)
In part 1 of this series, we will learn about JDK Flight Recorder and how we can use it to monitor a Spring Boot application. Introduction Application monitoring is one thing that we as developers cannot overlook. It doesn’t matter …
Contributing to OpenJDK Mission Control
Since this month is Hacktoberfest, I thought it would be a good idea to talk a bit about how to contribute to the OpenJDK Mission Control project.
The Costs of Hidden Logging
The story of a partially implemented logging facility in the JDK 8 backport of JFR (for which I was also partially responsible)!
JMC 8.0.1 Released!
The 8.0.1-ga tag was just set in the jmc8 repository on GitHub.
This is a patch update release, and will therefore not include any new features.
The next upcoming source release is JMC 8.1.0, which will contain new features and enhancements. The planned source release date for JMC 8.1.0 is the 2nd of August 2021.
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.