# Prometheus

> Open source systems and service monitoring system that collects metrics, evaluates alerting rules, and supports powerful queries via PromQL.

Prometheus is a 100% open source, community-driven monitoring and alerting toolkit originally created at SoundCloud and now a graduated project of the Cloud Native Computing Foundation (CNCF). Written in Go, it collects metrics from configured targets at defined intervals, evaluates rule expressions, and can trigger alerts when specified conditions are observed. The project is available under the Apache 2.0 License on GitHub and has accumulated over 64,000 stars as of mid-2026.

## What It Is

Prometheus is a systems and service monitoring system built around a multi-dimensional time series data model. Each time series is identified by a metric name and a set of key-value label pairs, enabling flexible querying and aggregation. The project is the second to have graduated from the CNCF after Kubernetes, reflecting its maturity and broad adoption in cloud native infrastructure.

## Core Architecture and Design

Prometheus follows a pull-based collection model: a central server scrapes HTTP endpoints exposed by instrumented targets at configurable intervals. Key architectural properties include:

- **No distributed storage dependency** — each server node operates autonomously with local storage only
- **Multi-dimensional data model** — time series defined by metric name and key/value label dimensions
- **PromQL** — a powerful and flexible query language for slicing, aggregating, and transforming time series data
- **Alertmanager** — a separate component that handles deduplication, grouping, silencing, and routing of alert notifications
- **Push gateway** — an intermediary that supports pushing metrics from short-lived batch jobs
- **Service discovery** — targets can be discovered dynamically via Kubernetes, Consul, EC2, and many other integrations, or configured statically

## Cloud Native Integration

The homepage states that Prometheus is "designed for the cloud native world" and integrates with Kubernetes and other cloud and container managers to continuously discover and monitor services. Its graduation from the CNCF places it alongside Kubernetes as a foundational piece of cloud native infrastructure. The project's pull model and label-based data model align naturally with containerized, ephemeral workloads.

## Instrumentation and Integrations

Prometheus ships with a large number of official and community-contributed client libraries covering most major programming languages, enabling direct instrumentation of application code. Hundreds of official and community exporters allow metrics to be extracted from existing systems — databases, hardware, message queues, HTTP servers, and more — without modifying their source code. The ecosystem also includes integrations with visualization tools such as Grafana.

## Update: v3.12.0 (May 2026)

The latest release is **v3.12.0**, published on 2026-05-28, as listed on the GitHub releases page. The repository shows active development with regular pushes to the main branch and over 800 open issues, indicating a healthy and ongoing project. The v3.x release line introduced a new Go module versioning scheme where Prometheus v3.y.z is published as v0.3y.z tags to comply with Go module rules.

## Deployment Options

Prometheus can be deployed in several ways:
- **Precompiled binaries** downloaded from prometheus.io for the recommended production path
- **Docker images** available on Quay.io and Docker Hub (`prom/prometheus`)
- **Building from source** using Go and Node.js toolchains
- **Kubernetes operators** and Helm charts maintained by the community

The statically linked Go binaries make cross-environment deployment straightforward with minimal runtime dependencies.

## Features
- Multi-dimensional time series data model with metric names and key-value labels
- PromQL query language for powerful time series queries and aggregations
- Pull-based HTTP metrics collection from configured targets
- Alerting rules based on PromQL with a separate Alertmanager component
- Push gateway for short-lived batch job metrics
- Service discovery via Kubernetes, Consul, EC2, and more
- Static configuration support
- Hundreds of official and community exporters
- Client instrumentation libraries for major programming languages
- Graphing and dashboarding support
- Hierarchical and horizontal federation
- Autonomous single-server nodes with local storage
- Docker image support
- Precompiled binaries for multiple platforms

## Integrations
Kubernetes, Grafana, Docker, Consul, Amazon EC2, Alertmanager, Quay.io, Docker Hub, Go, Node.js

## Platforms
WINDOWS, MACOS, LINUX, WEB, API, CLI

## Pricing
Open Source

## Version
v3.12.0

## Links
- Website: https://prometheus.io
- Documentation: https://prometheus.io/docs/introduction/overview/
- Repository: https://github.com/prometheus/prometheus
- EveryDev.ai: https://www.everydev.ai/tools/prometheus
