Prometheus, open-source service monitoring system and time series database from SoundCloud

I LOVE SOUNDCLOUD!

From time to time I read their tech blog…
Today I’v found Prometheus! Hooray SoundCloud! Hooray!

Prometheus

An open-source service monitoring system and time series database.
Prometheus is developed in the open and has a growing community outside of SoundCloud.

 

Data model

Prometheus implements a highly dimensional data model. Time series are identified by a metric name and a set of key-value pairs.

Query language

A flexible query language allows slicing and dicing of collected time series data in order to generate ad-hoc graphs, tables, and alerts.

Visualization

Prometheus has multiple modes for visualizing data: a built-in expression browser, a GUI-based dashboard builder, and a console template language.

Storage

Prometheus stores time series in memory and on local disk in an efficient custom format. Scaling is achieved by functional sharding and federation.

Operation

Each server is independent for reliability, relying only on local storage. Written in Go, all binaries are statically linked and easy to deploy.

Client libraries

Client libraries allow easy instrumentation of services. Currently, Go, Java, and Ruby are supported. Custom libraries are easy to implement.

Alerting

Alerts are defined based on Prometheus’s flexible query language and maintain dimensional information. An alert manager handles notifications and silencing.

Exporters

Existing exporters allow bridging of third-party data into Prometheus. Examples: system statistics, as well as Docker, HAProxy, StatsD, and JMX metrics.

 

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.