โ† Back to 30-Day Challenge

๐Ÿš€ Advanced & Capstone ยท Days 25โ€“30

Day 30: Capstone: Debug a Failing System

Objective

Given a deliberately degraded scenario, run load, find the bottleneck, and propose a fix.

Scenario

You are handed a slow or erroring system. You don't know why. Run your full toolkit: baseline, ramp-up, correlation, infra metrics, APM. Find the root cause. Write it up.

Metrics to Watch

end-to-end correlation across all metrics

When It Clicks

Everything clicks - tool output + infra metrics = root cause.

Solution

The diagnostic sequence: (1) Run a 1-user baseline to confirm the endpoint is functional (Day 2). (2) Ramp to find the knee (Day 7). (3) Check if it is CPU, memory, DB, or I/O bound using the bottleneck toolkit from Days 19-24. (4) Correlate with APM traces (Day 26). (5) Document the root cause with evidence: a slow query log line, a GC log excerpt, or a connection pool wait histogram. (6) Propose a fix, estimate its impact on the saturation point, and commit the test library so the next engineer has a starting point. This sequence is repeatable on any system.

Reflection

Which Day's skill was the most useful in finding the root cause?

Deliverable

A complete debug write-up: scenario, findings, root cause, recommendation, script library.

โš ๏ธ Never run load tests against infrastructure you do not own or have explicit written permission to test. Always use a dedicated test environment. Unauthorized load injection can cause outages, trigger legal liability, and violate terms of service.