End-to-end go opentracing example using jaeger as tracer.
This example shows how to leverage open tracing to see a span that covers the following flow:
As you can see:
- a span is started by performing an HTTP request to the
http-sever-initiatorthat callshttp-sever-receiverover HTTP in turn http-sever-receivercallsgrpc-serverover GRPC after having registered a child spangrpc-serverpublishes a message into kafka and returns a successful response upstream after having registered a child spankafka-consumerconsumes the message from thetodostopic and creates a new record in thetodostable. It creates two spans: one for the time spent in the whole consumer logic and one for the time spent during the database query.
You can run the project using docker-compose up (tbd)
- Write solid documentation.
