Prometheus

Prometheus

Prometheus is an open-source systems monitoring and alerting toolkit originally built at SoundCloud in 2012 and now a graduated Cloud Native Computing Foundation (CNCF) project. It collects and stores metrics as time-series data, identified by metric name and key-value pairs, enabling powerful queries with its PromQL query language. Prometheus has become the de-facto standard for monitoring containerised and cloud-native environments.

Key Features

  • Pull-based metric collection — Prometheus scrapes metrics from instrumented targets at configurable intervals, making it easy to determine whether a target is healthy by whether it responds to a scrape.
  • Powerful PromQL query language — A functional query language purpose-built for time-series data. Perform aggregation, rate calculation, histogram quantiles, and complex multi-dimensional queries.
  • Multi-dimensional data model — Every metric is identified by a name and a set of key-value labels, allowing you to slice, dice, and aggregate across any dimension.
  • Reliable alerting with Alertmanager — Define alert rules that trigger when conditions are met, then route, deduplicate, silence, and escalate through Alertmanager to email, Slack, PagerDuty, and webhooks.
  • Service discovery integration — Automatically discovers targets from Kubernetes, Consul, EC2, Azure, and DNS SRV records, adapting to dynamic infrastructure without manual intervention.
  • Efficient local storage — Custom time-series database optimised for high-churn, high-cardinality metric workloads with configurable retention policies.
  • OpenMetrics exposition format — Standardised metric exposition format supported by most modern software for automatic instrumentation.
  • Client libraries for all major languages — First-party client libraries for Go, Java, Python, Ruby, and Rust, plus third-party libraries for Node.js and .NET.

Why Use Prometheus?

Prometheus excels where most monitoring tools struggle — dynamic, containerised environments where services appear and disappear constantly. Its pull model and service discovery mean you do not need to reconfigure anything when you scale up. Combined with Grafana and Alertmanager, Prometheus forms the most widely adopted open-source monitoring stack in the world.

Use Cases

  • Monitor a Kubernetes cluster with automatic discovery of pods, services, and nodes — Prometheus discovers every new deployment and scrapes its metrics without manual configuration.
  • Track application SLIs and SLOs by instrumenting your code with a Prometheus client library — expose request duration histograms, error counters, and in-flight requests.
  • Feed a centralised long-term monitoring archive by writing Prometheus metrics via remote write into Thanos or VictoriaMetrics for global query views.

Platform

Linux · macOS · Windows · Docker · Kubernetes

Licence

Apache-2.0

Website

prometheus.io

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.