This example shows how to use Camel with OpenTracing to trace all incoming and outgoing Camel messages.
The example uses a logging tracer (based on the MockTracer) to display tracing information on the console.
The example includes four sub maven modules that implement
-
client
-
service1
-
service2
-
loggingtracer
Where client → service1 → service2 using HTTP.
Then using three different shells and run service1 and service2 before the client. These services use an annotation CamelOpenTracing to indicate that the service should be traced.
$ cd service1
$ mvn compile spring-boot:run
When service1 is ready then start service2
$ cd service2
$ mvn compile spring-boot:run
And then start the client that calls service1 every 30 seconds.
$ cd client
$ mvn compile camel:run
The client application explicitly instantiates and initializes the OpenTracing Tracer with the CamelContext.
The shells will show SPAN FINISHED messages indicating what spans have been reported from the client and two services.
If you hit any problem using Camel or have some feedback, then please let us know.
We also love contributors, so get involved :-)
The Camel riders!