Spring I/O


Michael Simons

Micrometer: New insights into your Spring Boot application

Michael Simons - innoQ

Micrometer is a new library written by the folks at Pivotal. It’s an instrumentation library for JVM-based application and it is the default instrumentation library for all kinds of metrics in a Spring Boot 2.0 application.

An application can be observed in three ways: Through logging, tracing and metrics. While all three ways are based either directly or indirectly on events , they only share subset of qualitites. Logs are usually discrete, tracing requires extra work to identify events across services and metrics have to be collected over time and usually provide more value through aggregation. As such, metrics can be seen as a function of measurements.

The idea of Micrometer is to provide a way to collect and publish metrics inside a JVM-based application without vendor lock-in. Much like a logging facade, but for metrics.

Micrometer deals with several tasks: Collecting meters of different types like counters, gauges and timers and than publishing them to a fitting storage. The type of storage can vary to a great degree because Micrometer is fully modular.

Learn in this talk how to facilitate Micrometer in a Spring Boot application through the new Spring Boot Actuator 2. See what kind of meters Spring Boot brings you, how you can easily add your own withouth the burden of providing a perfomant solution of collecting the data. And finally, see how you can export those metrics to stores like Prometheus, Graphite or JMX and visualize them withouth actively pulling your application in a fixed interval.