Monitor Your (Distributed) Java Applications: Logs, Metrics, Pings, and Traces

A presentation at jDays in in Gothenburg, Sweden by Philipp Krenn

With microservices every outage is like a murder mystery" is a common complaint. But it doesn't have to be! This talk gives an overview on how to monitor Spring Boot applications, since they are increasingly popular for building microservices. We dive into:

  • System metrics: Keep track of network traffic and system load.
  • Application logs: Collect structured logs in a central location.
  • Uptime monitoring: Ping services and actively monitor their availability and response time.
  • Application metrics: Get the information from Boot's metrics and health via REST or JMX.
  • Request tracing: Trace requests through a distributed system and use Kibana to show how long each call takes.

And we will do all of that live, since it is so easy and much more interactive that way.

Resources

The following resources were mentioned during the presentation or are useful additional information.

  • GitHub: Demo Code

    Monitor your Spring Boot application with the Elastic Stack all around