Tracing spans without overloading juniors
Tracing curricula fail when they jump straight to mesh-wide baggage. We start with two services, manual span attributes, and a single dashboard saved as code so learners can diff their changes.
We emphasize naming consistency over exotic exporters. Once IDs line up across logs and traces, we introduce sampling tradeoffs with explicit math—no hand-waving about “negligible overhead.”
We also discuss privacy boundaries: which fields belong in spans versus logs, and where redaction belongs. That conversation keeps teams aligned with quality standards owners.
Capstone reviews ask learners to defend their sampling rate using real traffic assumptions from the lab dataset. Wrong math is fine if the reasoning is documented; silent defaults are not.