Tutorials Microservices with .NET
Merging and Resolving Conflicts in Git — Complete Guide
Merging and Resolving Conflicts in Git — Complete Guide: free step-by-step lesson with examples, common mistakes, and interview tips — part of Microservices with .NET on Toolliyo Academy.
On this page
Microservices with .NET · Lesson 92 of 120
Distributed Tracing
Beginner ✓ → Intermediate ✓ → Advanced ✓ → Professional
Professional · 4 — Real projects · ~10 min · Module 10: Observability and Testing
What is this?
Distributed Tracing is a key part of ShopNest Cloud-Native — your .NET microservices learning project. In plain terms: it helps Order Service work correctly in a distributed system where each app deploys and scales on its own.
Why should you care?
You care about this when a checkout fails and you must trace it across Gateway → Order → Payment → RabbitMQ in minutes, not days.
See it live — copy this example
Create a Web API project (dotnet new webapi), paste the code, then run dotnet run.
builder.Services.AddOpenTelemetry()
.WithTracing(b => b
.AddAspNetCoreInstrumentation()
.AddHttpClientInstrumentation()
.AddSource("MassTransit"));
Log.Information("Order {OrderId} placed", order.Id);
Run Example »
Edit the code and click Run — like W3Schools Try it Yourself.
What happened?
- The example shows Distributed Tracing wired into Order Service.
- Read each line, run it locally, then change one setting and observe what breaks or improves.
- That is how teams learn in production too — small experiments, not big bang rewrites.
Try it yourself
- Open or create the ShopNest project area for Order Service.
- Apply the Distributed Tracing pattern from the lesson example.
- Run dotnet build && dotnet run (or docker compose up when the lesson uses containers).
- Change a string or number in the example and run again — predict the output first.
- Break the code on purpose (remove a semicolon), read the compiler error, then fix it.
Remember
Distributed Tracing connects to Order Service in ShopNest Cloud-Native. Practice by editing the example yourself — do not only read. Move on when you can explain this topic in your own words without looking.
Real-world: Flipkart Big Billion Day checkout
During peak sales, Order and Payment services scale independently. RabbitMQ buffers spikes so Payment workers catch up without blocking the mobile app.
Outcome: Checkout returns in under 500ms while payment completes in the background — shoppers see clear status updates.