PCA study plan
PCA · Give each week a clear focus.
8 weeks · About 6 hours per week
Prometheus Fundamentals & PromQL
Stand up a local Prometheus instance with a scrape config that targets at least three distinct job types and verify targets show UP in the UI
Write 15 PromQL instant queries across selectors, label matchers, and range vectors, and record the result type each returns
Explain out loud the difference between gauge, counter, and histogram metric types and give one concrete example of each from a running target
Draw the Prometheus data model on paper: metric name, labels, samples, and timestamps, then annotate how a scrape becomes a time series
Your checkpoint
A saved queries file plus a one-page diagram of the data model, reviewed against the running instance
PromQL & Prometheus Fundamentals
Build rate() and increase() queries over counters and identify why a window shorter than two scrape intervals gives misleading results
Apply aggregation operators (sum, avg, topk, count by) to collapse a high-cardinality series set into a per-job summary
Configure two recording rules that precompute expensive aggregations and confirm they appear as new series
Diagnose and fix one query that returns no data by inspecting label mismatches with label_values and series matching
Your checkpoint
A recording-rules file with two rules that evaluate successfully, plus a written note on the counter-reset behavior you observed
PromQL & Observability Concepts
Write histogram_quantile() queries against a bucket metric and validate the result against a hand-computed estimate
Use offset, @ modifier, and subqueries in at least three queries to compare current versus past behavior
Compare pull versus push collection models and list two tradeoffs of each in the context of your own setup
Map the four golden signals onto specific metrics available in your local instance
Your checkpoint
A query cookbook of 20 PromQL expressions, each with the question it answers and a sample output
Observability Concepts & Instrumentation and Exporters
Instrument a small application with a client library exposing a counter, a gauge, and a histogram with meaningful labels
Write a custom exporter or textfile collector that surfaces at least two business-level metrics
Explain cardinality risk and rewrite one metric to remove a high-cardinality label without losing analytical value
Describe how service discovery and relabeling change the target set, and apply one relabel rule that drops a label
Your checkpoint
A running instrumented app scraped by Prometheus, with a README documenting each metric and its labels
Alerting & Dashboarding & Observability Concepts
Author three alerting rules covering a symptom-based condition, a saturation condition, and an absent-metric condition
Tune a for: duration and explain how it interacts with the evaluation interval to reduce flapping
Write a runbook entry for each alert naming the likely cause and first diagnostic query
Route alerts through Alertmanager with at least one inhibition rule and one grouping configuration
Your checkpoint
An alerting-rules file plus runbook that fires correctly when you deliberately break the target
Alerting & Dashboarding & Instrumentation and Exporters
Build a dashboard with panels for rate, latency percentile, error ratio, and saturation, each backed by a saved query
Add template variables so the dashboard can be filtered by job and instance without editing panels
Apply unit formatting and thresholds so a panel communicates health at a glance
Review one dashboard for misleading axes or missing context and fix the issues found
Your checkpoint
An exported dashboard JSON that renders correctly against your local instance with working variables
PromQL & Alerting & Dashboarding
Solve ten timed PromQL scenarios mixing aggregation, histogram quantiles, and offset comparisons
Debug three broken queries by reasoning about vector matching and label sets before testing
Convert one raw metric query into a recording rule feeding an alert to reduce evaluation cost
Explain when an alert should be based on a symptom versus a cause and justify your choices
Your checkpoint
A timed practice log with ten solved scenarios and written reasoning for each
Observability Concepts & Prometheus Fundamentals & PromQL & Instrumentation and Exporters & Alerting & Dashboarding
Re-derive the core concepts of each domain from memory in a one-page cheat sheet
Re-run every deliverable from weeks 1 through 7 and fix anything that no longer works
Complete a full-length timed practice set and categorize every miss by domain
Close the two weakest domains by rewriting the missed concepts in your own words
Your checkpoint
A completed practice exam score report with a per-domain remediation list
Milestones
Week 2: You can write a rate() aggregation over a counter and explain counter resets without notes
Week 4: Your instrumented app exposes custom metrics that Prometheus scrapes and you can query them by label
Week 6: An alert fires end to end through Alertmanager and a dashboard reflects the same incident
Week 8: Practice exam score shows no domain below 70 percent and all week deliverables re-verified