The tutorials are using CNCF Jaeger (https://github.com/jaegertracing/jaeger) as the tracing backend, see here how to install it in a Docker image.
For running the code, you will need the .NET Core SDK. The code can be written with any text editor and run from the command line.
For easier development, use the free IDE Visual Studio Code available for Windows, Linux and macOS. For full language support including smart code completion and debugging, get the C# extension for Visual Studio Code. Alternatively, if you already have Visual Studio 2017 or higher, .NET Core SDK is already included.
This repository uses NuGet to manage dependencies. All dependencies are already included in the example projects.
All subsequent commands in the tutorials should be executed in the corresponding project directory.
- Lesson 01 - Hello World
- Instantiate a Tracer
- Create a simple trace
- Annotate the trace
- Lesson 02 - Context and Tracing Functions
- Trace individual functions
- Combine multiple spans into a single trace
- Propagate the in-process context
- Lesson 03 - Tracing RPC Requests
- Trace a transaction across more than one microservice
- Pass the context between processes using
Inject
andExtract
- Apply OpenTracing-recommended tags
- Lesson 04 - Baggage
- Understand distributed context propagation
- Use baggage to pass data through the call graph
- Extra Credit
- Use existing open source instrumentation