Skip to content

Module 3: Tracing Context (The Invisible ID)

📚 Module 3: Tracing Context

Course ID: DOTNET-803
Subject: The Invisible ID

How do two different apps (Service A and Service B) know they are working on the same user request? They pass an Invisible ID in the background. This is called Context Propagation.


🏗️ Step 1: The “Who asked?” Problem

Imagine you are a detective.

  • You find a crime scene (An Error log in the database).
  • You know what happened, but you don’t know who started the chain of events.
  • Was it the “Buy” button? Was it a “Refund”?

🏗️ Step 2: HTTP Headers (The “Backpack”)

When Service A calls Service B, it doesn’t just send the data. It sends a tiny Backpack (HTTP Headers) that contains the Trace ID.

🧩 The Analogy: The Baton in a Relay Race

  • Runner 1 (Web Service) starts the race. They are holding a Baton (The Trace ID).
  • When they hand the baton to Runner 2 (Payment Service), Runner 2 now knows exactly which race they are in.
  • Even if Runner 2 falls, the coach in the stands knows exactly which team failed because they can see the baton.

🏗️ Step 3: W3C Trace Context (The “Universal Baton”)

In the old days, every company had their own baton. Today, the whole world uses the W3C Trace Context standard.

  • It’s like a Universal Language.
  • It means a Python Web Service can hand a baton to a .NET Payment Service, and everyone understands it!

🥅 Module 3 Review

  1. Context Propagation: Passing IDs between services.
  2. HTTP Headers: The “Backpack” used to carry the IDs.
  3. Trace ID: The unique name for a single user journey.
  4. Correlation ID: Another name for a Trace ID used to link logs.