BM: Baca dalam Bahasa Melayu
World O3: Alarms & Screens Β· Boss challenge
Quiet the pager
You will learn: to turn a night of noisy alerts into a few that matter.
Checked with Prometheus 3 on 1 Nov 2026
The problem
Boss! Kedai Kancilβs pager buzzed 20 times last night. The on-call cook is tired. Room 1: sort these bells.
Drag a card into a box. Or tap the card, then tap the box.
Try it
Room 2: the queue bell flaps all night. You may only wait 1 minute. Make it ring in one stretch.
Build an alert rule from the blocks. The timeline shows when it would wait and when it would fire.
groups: - name: kedai rules: - alert: QueueLong expr: kedai_queue_length > 25 labels: severity: ticket
Graph as a table
| Time | kedai_queue_length{stall="nasi-lemak"} |
|---|---|
| 0s | 10 |
| 1m | 12 |
| 2m | 30 |
| 3m | 9 |
| 4m | 31 |
| 5m | 11 |
| 6m | 29 |
| 7m | 33 |
| 8m | 8 |
| 9m | 35 |
| 10m | 36 |
| 11m | 38 |
| 12m | 40 |
| 13m | 42 |
| 14m | 41 |
| 15m | 39 |
| 16m | 12 |
| 17m | 10 |
| 18m | 9 |
| 19m | 8 |
| 20m | 7 |
| 21m | 30 |
| 22m | 9 |
| 23m | 8 |
| 24m | 7 |
| 25m | 6 |
| 26m | 5 |
| 27m | 5 |
| 28m | 5 |
| 29m | 5 |
| 30m | 5 |
What the alert does over time
Grey: quiet. Amber: pending (true, but waiting). Red: firing.
{severity="ticket", stall="nasi-lemak"}π firing at 2m Β· π firing at 4m Β· π firing 6m to 7m Β· π firing 9m to 15m Β· π firing at 21m
At 12m:
- FIRING
QueueLongseverity="ticket", stall="nasi-lemak"
Timeline as a table
| Time | {severity="ticket", stall="nasi-lemak"} |
|---|---|
| 0s | quiet |
| 1m | quiet |
| 2m | π firing |
| 3m | quiet |
| 4m | π firing |
| 5m | quiet |
| 6m | π firing |
| 7m | π firing |
| 8m | quiet |
| 9m | π firing |
| 10m | π firing |
| 11m | π firing |
| 12m | π firing |
| 13m | π firing |
| 14m | π firing |
| 15m | π firing |
| 16m | quiet |
| 17m | quiet |
| 18m | quiet |
| 19m | quiet |
| 20m | quiet |
| 21m | π firing |
| 22m | quiet |
| 23m | quiet |
| 24m | quiet |
| 25m | quiet |
| 26m | quiet |
| 27m | quiet |
| 28m | quiet |
| 29m | quiet |
| 30m | quiet |
Hint
avg_over_time(β¦[5m]) smooths quick bounces before the check.Try it
Room 3: when the whole shop is down, mute the ticket bells it causes. Add a target_matchers line.
Change the YAML. The box below shows how a computer reads it.
How a computer reads it
- routemap Β· 2 keys
- receiverteam-chattext
- group_bylist Β· 2 items
- item 1alertnametext
- item 2jobtext
- receiverslist Β· 1 items
- item 1map Β· 1 keys
- nameteam-chattext
- item 1map Β· 1 keys
- inhibit_ruleslist Β· 1 items
- item 1map Β· 2 keys
- source_matcherslist Β· 1 items
- item 1alertname="ShopDown"text
- equallist Β· 1 items
- item 1jobtext
- source_matcherslist Β· 1 items
- item 1map Β· 2 keys
Try it
Room 4: one SLO bell replaces five error bells. Page for the fast burn only.
Build an alert rule from the blocks. The timeline shows when it would wait and when it would fire.
groups: - name: kedai rules: - alert: FastBurn expr: job:shop_error_ratio:rate5m > 0.001 for: 2m labels: severity: ticket
Graph as a table
| Time | job:shop_error_ratio:rate5m{job="shop"} |
|---|---|
| 0s | β |
| 1m | 0.0005 |
| 2m | 0.0005 |
| 3m | 0.0005 |
| 4m | 0.0005 |
| 5m | 0.0005 |
| 6m | 0.0005 |
| 7m | 0.0005 |
| 8m | 0.0005 |
| 9m | 0.0005 |
| 10m | 0.0005 |
| 11m | 0.0005 |
| 12m | 0.0005 |
| 13m | 0.0005 |
| 14m | 0.0005 |
| 15m | 0.0005 |
| 16m | 0.0005 |
| 17m | 0.0005 |
| 18m | 0.0005 |
| 19m | 0.0005 |
| 20m | 0.011899999999999999 |
| 21m | 0.0219 |
| 22m | 0.0319 |
| 23m | 0.0419 |
| 24m | 0.037625 |
| 25m | 0.025249999999999998 |
| 26m | 0.012874999999999998 |
| 27m | 0.0005 |
| 28m | 0.0005 |
| 29m | 0.0005 |
| 30m | 0.0005 |
| 31m | 0.0005 |
| 32m | 0.0005 |
| 33m | 0.0005 |
| 34m | 0.0005 |
| 35m | 0.0005 |
| 36m | 0.0005 |
| 37m | 0.0005 |
| 38m | 0.0005 |
| 39m | 0.0005 |
| 40m | 0.0005 |
| 41m | 0.0005 |
| 42m | 0.0005 |
| 43m | 0.0005 |
| 44m | 0.0005 |
| 45m | 0.0005 |
| 46m | 0.0005 |
| 47m | 0.0005 |
| 48m | 0.0005 |
| 49m | 0.0005 |
| 50m | 0.0005 |
| 51m | 0.0005 |
| 52m | 0.0005 |
| 53m | 0.0005 |
| 54m | 0.0005 |
| 55m | 0.0005 |
| 56m | 0.0005 |
| 57m | 0.0005 |
| 58m | 0.0005 |
| 59m | 0.0005 |
| 1h | 0.0005 |
| 1h1m | 0.012874999999999998 |
| 1h2m | 0.025249999999999998 |
| 1h3m | 0.037625 |
| 1h4m | 0.049999999999999996 |
| 1h5m | 0.049999999999999996 |
| 1h6m | 0.049999999999999996 |
| 1h7m | 0.049999999999999996 |
| 1h8m | 0.049999999999999996 |
| 1h9m | 0.049999999999999996 |
| 1h10m | 0.049999999999999996 |
| 1h11m | 0.049999999999999996 |
| 1h12m | 0.049999999999999996 |
| 1h13m | 0.049999999999999996 |
| 1h14m | 0.049999999999999996 |
| 1h15m | 0.049999999999999996 |
| 1h16m | 0.049999999999999996 |
| 1h17m | 0.049999999999999996 |
| 1h18m | 0.049999999999999996 |
| 1h19m | 0.049999999999999996 |
| 1h20m | 0.049999999999999996 |
| 1h21m | 0.049999999999999996 |
| 1h22m | 0.049999999999999996 |
| 1h23m | 0.049999999999999996 |
| 1h24m | 0.049999999999999996 |
| 1h25m | 0.049999999999999996 |
| 1h26m | 0.049999999999999996 |
| 1h27m | 0.049999999999999996 |
| 1h28m | 0.049999999999999996 |
| 1h29m | 0.049999999999999996 |
| 1h30m | 0.049999999999999996 |
| 1h31m | 0.037625 |
| 1h32m | 0.025249999999999998 |
| 1h33m | 0.012874999999999998 |
| 1h34m | 0.0005 |
| 1h35m | 0.0005 |
| 1h36m | 0.0005 |
| 1h37m | 0.0005 |
| 1h38m | 0.0005 |
| 1h39m | 0.0005 |
| 1h40m | 0.0005 |
| 1h41m | 0.0005 |
| 1h42m | 0.0005 |
| 1h43m | 0.0005 |
| 1h44m | 0.0005 |
| 1h45m | 0.0005 |
| 1h46m | 0.0005 |
| 1h47m | 0.0005 |
| 1h48m | 0.0005 |
| 1h49m | 0.0005 |
| 1h50m | 0.0005 |
| 1h51m | 0.0005 |
| 1h52m | 0.0005 |
| 1h53m | 0.0005 |
| 1h54m | 0.0005 |
| 1h55m | 0.0005 |
| 1h56m | 0.0005 |
| 1h57m | 0.0005 |
| 1h58m | 0.0005 |
| 1h59m | 0.0005 |
| 2h | 0.0005 |
What the alert does over time
Grey: quiet. Amber: pending (true, but waiting). Red: firing.
{job="shop", severity="ticket"}β³ pending 20m to 21m Β· π firing 22m to 26m Β· β³ pending 1h1m to 1h2m Β· π firing 1h3m to 1h33m
At 1h20m:
- FIRING
FastBurnjob="shop", severity="ticket"
Timeline as a table
| Time | {job="shop", severity="ticket"} |
|---|---|
| 0s | quiet |
| 1m | quiet |
| 2m | quiet |
| 3m | quiet |
| 4m | quiet |
| 5m | quiet |
| 6m | quiet |
| 7m | quiet |
| 8m | quiet |
| 9m | quiet |
| 10m | quiet |
| 11m | quiet |
| 12m | quiet |
| 13m | quiet |
| 14m | quiet |
| 15m | quiet |
| 16m | quiet |
| 17m | quiet |
| 18m | quiet |
| 19m | quiet |
| 20m | β³ pending |
| 21m | β³ pending |
| 22m | π firing |
| 23m | π firing |
| 24m | π firing |
| 25m | π firing |
| 26m | π firing |
| 27m | quiet |
| 28m | quiet |
| 29m | quiet |
| 30m | quiet |
| 31m | quiet |
| 32m | quiet |
| 33m | quiet |
| 34m | quiet |
| 35m | quiet |
| 36m | quiet |
| 37m | quiet |
| 38m | quiet |
| 39m | quiet |
| 40m | quiet |
| 41m | quiet |
| 42m | quiet |
| 43m | quiet |
| 44m | quiet |
| 45m | quiet |
| 46m | quiet |
| 47m | quiet |
| 48m | quiet |
| 49m | quiet |
| 50m | quiet |
| 51m | quiet |
| 52m | quiet |
| 53m | quiet |
| 54m | quiet |
| 55m | quiet |
| 56m | quiet |
| 57m | quiet |
| 58m | quiet |
| 59m | quiet |
| 1h | quiet |
| 1h1m | β³ pending |
| 1h2m | β³ pending |
| 1h3m | π firing |
| 1h4m | π firing |
| 1h5m | π firing |
| 1h6m | π firing |
| 1h7m | π firing |
| 1h8m | π firing |
| 1h9m | π firing |
| 1h10m | π firing |
| 1h11m | π firing |
| 1h12m | π firing |
| 1h13m | π firing |
| 1h14m | π firing |
| 1h15m | π firing |
| 1h16m | π firing |
| 1h17m | π firing |
| 1h18m | π firing |
| 1h19m | π firing |
| 1h20m | π firing |
| 1h21m | π firing |
| 1h22m | π firing |
| 1h23m | π firing |
| 1h24m | π firing |
| 1h25m | π firing |
| 1h26m | π firing |
| 1h27m | π firing |
| 1h28m | π firing |
| 1h29m | π firing |
| 1h30m | π firing |
| 1h31m | π firing |
| 1h32m | π firing |
| 1h33m | π firing |
| 1h34m | quiet |
| 1h35m | quiet |
| 1h36m | quiet |
| 1h37m | quiet |
| 1h38m | quiet |
| 1h39m | quiet |
| 1h40m | quiet |
| 1h41m | quiet |
| 1h42m | quiet |
| 1h43m | quiet |
| 1h44m | quiet |
| 1h45m | quiet |
| 1h46m | quiet |
| 1h47m | quiet |
| 1h48m | quiet |
| 1h49m | quiet |
| 1h50m | quiet |
| 1h51m | quiet |
| 1h52m | quiet |
| 1h53m | quiet |
| 1h54m | quiet |
| 1h55m | quiet |
| 1h56m | quiet |
| 1h57m | quiet |
| 1h58m | quiet |
| 1h59m | quiet |
| 2h | quiet |
Check
Room 5: tonight, 1 a.m. to 2 a.m., the database gets a planned upgrade. What do you do?
Pick one answer.
Check
Final room: swipe right for habits that keep the pager quiet.
Swipe right for good, left for needs work. Or use the buttons.
Every paging alert links a runbook.
You did it!
You can now turn a noisy pager into a few bells that matter.
Bahasa Melayu
Boss! Pager Kedai Kancil bergetar 20 kali semalam. Tukang masak on-call dah penat. Bilik 1: susun loceng-loceng ini.
Bilik 2: loceng barisan berkelip sepanjang malam. Anda cuma boleh tunggu 1 minit. Jadikan ia berbunyi dalam satu tempoh.
avg_over_time(β¦[5m]) licinkan lantunan cepat sebelum semakan.Bilik 3: bila seluruh kedai mati, senyapkan loceng tiket yang berpunca daripadanya. Tambah baris target_matchers.
Bilik 4: satu loceng SLO ganti lima loceng ralat. Panggil untuk pembakaran laju sahaja.
Bilik 5: malam ini, 1 pagi hingga 2 pagi, pangkalan data dinaik taraf seperti dirancang. Apa anda buat?
Bilik terakhir: leret ke kanan untuk tabiat yang kekalkan pager tenang.
Kini anda boleh tukar pager yang bising kepada beberapa loceng yang penting.
You finished this before. Practice is always welcome!
Official docs: Alerting (practices) Β· Alertmanager configuration Β· Alerting on SLOs (Google SRE workbook)
You've learned for 25 minutes. A short break helps your brain.
Sprint done! Great focus. Stretch for a minute?