Prometheus Monitoring for Java Developers by Fabian Stäber
Prometheus is an open source monitoring tool, which is conceptually based on Google's internal Borgmon monitoring system. Unlike traditional tools like Nagios, Prometheus implements a white-box monitoring approach: Applications actively provide metrics, these metrics are stored in a time-series database, the time-series data is used as a source for generating alerts. Prometheus comes with a powerful query language allowing for statistical evaluation of metrics. Many modern infrastructure components have Prometheus metrics built-in, like Docker's cAdvisor, Kubernetes, or Konsul. Moreover, there are libraries for instrumenting proprietary applications in a lot of programming languages. This talk gives an introduction to monitoring with Prometheus, and shows how Java applications can expose metrics for Prometheus monitoring environments. We show how to instrument applications directly in code, as well as how to expose JMX beans in legacy applications. Dr. Fabian Stäber is software developer, research and development lead, consultant, architect, at ConSol* Consulting & Solutions Software GmbH in Munich, Germany. Fabian is excited about JEE, clustered back-ends, Big Data applications, and advanced distributed architectures. He is also member of the JSR 373 expert group. His academic research was on decentralized, peer-to-peer-based network architecture. [EAP-4528]