// The metrics database for cloud-native.
PROMETHEUS CHANGED HOW WE THINK ABOUT METRICS.
Originally built at SoundCloud, Prometheus is now a CNCF graduated project. It pulls metrics from targets, stores them efficiently, and lets you query with PromQL—a powerful expression language for time series data.
WHY PROMETHEUS?
Prometheus uses a pull model—it scrapes metrics from targets over HTTP. No agents needed on most systems. It handles millions of time series, alerts on conditions, and integrates perfectly with Grafana for visualization.
JOIN THE METRICS REVOLUTION.
Learn to instrument your applications, write PromQL queries, set up alerting rules, and build dashboards. Prometheus is the backbone of modern observability.
10 lessons. Complete metrics control.
What is Prometheus and how it works
BeginnerInstall Prometheus and configure
BeginnerUnderstanding metrics and label dimensions
BeginnerQuery Prometheus with PromQL
BeginnerNode, cAdvisor, and custom exporters
IntermediateFunctions, aggregations, and joins
IntermediatePre-compute complex queries
IntermediateDefine and route alerts with Alertmanager
IntermediateAuto-discover targets in Kubernetes
AdvancedBuild dashboards with Grafana
AdvancedPrometheus was created by Matt Levachimov and Julius Volz at SoundCloud in 2012. It joined CNCF in 2016 and graduated in 2018—the second project to do so after Kubernetes.
Unlike traditional monitoring systems with push agents, Prometheus uses a pull model. It scrapes metrics from HTTP endpoints at regular intervals. This makes it simple, reliable, and scalable to thousands of targets.
Prometheus stores time series data with dimensional data—each metric has labels (key-value pairs) that allow flexible querying. This multidimensional approach, combined with PromQL, makes Prometheus incredibly powerful.
Metrics are truth. Let Prometheus show you the truth.
Prometheus is an open-source systems monitoring and alerting toolkit. It collects and stores metrics as time series data—numerical values identified by metric name and optional key-value labels.
1. Prometheus uses a _____ model.
Hint: Opposite of push
2. Programs exposing metrics are called _____.
Hint: Export metrics
3. Metrics stored as _____ series.
Hint: Time-based
4. Query language is _____.
Hint: Prometheus Query Language
5. Prometheus collects from targets at regular _____.
Hint: Regular times
1. Pull
2. Exporters
3. Time
4. PromQL
5. Intervals
Prometheus can run as a binary, in Docker, or on Kubernetes. The binary is simplest for learning.
1. Default scrape interval is _____ seconds.
Hint: 15
2. Configuration file is prometheus._____.
Hint: YAML
3. Alert rules in _____ files.
Hint: Rules
1. 15
2. yml
3. Rule
Prometheus metrics follow a specific format with metric name and labels.
1. A metric that only increases is a _____.
Hint: Counting
2. A metric that goes up and down is a _____.
Hint: Measurement
3. Key-value pairs attached to metrics are _____.
Hint: Dimensions
4. Histogram is for _____ distributions.
Hint: Bucketed
1. Counter
2. Gauge
3. Labels
4. Bucket
PromQL (Prometheus Query Language) lets you select and aggregate time series data.
1. up{job="prometheus"} filters by _____.
Hint: Label filter
2. up[5m] is a _____ vector.
Hint: Time range
3. Rate calculates per-second _____.
Hint: Speed
1. Label
2. Range
3. Rate
Exporters are programs that collect metrics from systems and expose them in Prometheus format. They translate existing monitoring data into Prometheus metrics.
1. _____ exporter collects system metrics.
Hint: System
2. cAdvisor collects _____ metrics.
Hint: Docker
3. Node exporter listens on port _____.
Hint: 9100
1. Node
2. Container
3. 9100
PromQL provides powerful aggregation to combine metrics across dimensions.
1. _____ aggregates to total sum.
Hint: Total
2. Predict linear _____ future values.
Hint: Linear
3. Increase shows total _____ over time.
Hint: Change
1. Sum
2. Linear
3. Growth
Recording rules pre-compute expensive queries and store results as new time series. This speeds up dashboards and reduces load.
1. Recording rules pre-_____ expensive queries.
Hint: Calculate
2. Rules stored in _____ files.
Hint: YAML
3. Reload API endpoint is /-/_____.
Hint: Reload
1. Compute
2. yml
3. Reload
Prometheus evaluates alert rules and sends to Alertmanager when conditions are met.
1. Alert rules evaluate and send to _____.
Hint: Alert manager
2. Duration before firing with _____ clause.
Hint: Wait period
3. Annotations provide _____ details.
Hint: What happened
1. Alertmanager
2. For
3. Description
Instead of static configs, use service discovery to automatically find targets in Kubernetes, Docker, EC2, and more.
1. _____ discovery auto-finds targets.
Hint: Auto-find
2. K8s SD uses role _____.
Hint: Pod
3. _____ configs transform labels.
Hint: Label modification
1. Service
2. Pod
3. Relabel
Grafana is the standard visualization tool for Prometheus. Add Prometheus as a data source and build dashboards.
Import pre-built dashboards from Grafana.com. Search for "Prometheus" to find community dashboards for Kubernetes, nodes, databases, and more.
1. Grafana visualizes _____ from Prometheus.
Hint: Data
2. Import dashboards from _____.com.
Hint: Grafana
3. Auto-interval variable is $__rate _____.
Hint: Interval
1. Metrics
2. Grafana
3. Interval