Spring Boot: UI for the dump endpoint

I am really happy with the actuator functionality in Spring Boot applications. It offers some fantastic tools for gaining insight into your application. Some of the REST endpoints that you get - such as health and metrics - are easy to read. Despite the fact that they render as JSON, my guess is that your human eyes still can comprehend it.

But have you ever taken a look at the output from Spring Boot's dump endpoint?

That’s really not so friendly to read. At least not for my kind of eyes. And perhaps thats okay - if you got some tooling that can parse the thread stack info and show it nicely to you. But chances are that you don’t have that - like I didn’t.

So, a while back,  I decided to create a Spring Boot plugin that you just include on the application classpath. Like you do with the Spring Boot starters. This is what you get:

Red lines indicate methods that owns an intrinsic lock (think synchronized in Java land). I added a little gray line above each such event: it tells you what kind of class the intrinsic lock is associated with.

I have added this plugin to the Maven Central. Find it here.

The code is OSS - find it at GitHub. It is also here that you will find some extra documentation on how you can configure the plugin - so check it out if you want to give it a spin.

By the way: It was very interesting to make such a Spring Boot plugin. It uses auto configuration and other cool stuff. If you think that sounds interesting, then look at the code: it is really simple 😉.