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.
This repository uses Maven to manage dependencies. To install all dependencies, run:
cd opentracing-tutorial/java
mvn package
All subsequent commands in the tutorials should be executed relative to this java
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
If you are interested in using the OpenTelemetry SDK as the OpenTracing tracer implementation instead of the Jaeger client, check out the blog post "Migrating from Jaeger client to OpenTelemetry SDK", which uses the lesson 4 as example.