Hi! As far as I know, Ignite does not support Zipkin trace propagation out of the box, unlike Spring Cloud. Hence request handler in {{rest-http}} loses tracing-context-specific headers (see [1]) sent with request and the span gets broken into two parts. This can be worked around by replacing {{rest-http}} with Spring Cloud request handler, that in turn should execute Ignite Compute Task explicitly.
[1] https://cloud.spring.io/spring-cloud-sleuth/single/spring-cloud-sleuth.html#_propagation чт, 14 мар. 2019 г. в 09:16, Павлухин Иван <vololo...@gmail.com>: > Hi, > > As far as I remember zipkin defines tracing units in a current thread > of execution. I cannot say for sure what goes wrong in your case. But > it might be that traced execution on ser3 side switches from one > thread to another and you see 2 units as a result. > > чт, 14 мар. 2019 г. в 02:09, Aditya Kumar <adityaku...@fico.com>: > > > > > > Hi Team, > > > > I was using ignite as dependecy in our application and was able to trace > end to end trace microservice calls. > > Then, to let ignite handle our services in compute task, we removed all > spring-boot dependencies and created task for each service we had in our > microservice. > > > > The issue we are facing is explained using below POC done at our end. > > > > > > We created a sample app where below things have been done and deployed > in ignite: > > 1. created beans and interceptors needed to start and track zipkin and > brave trace > > 2. craeted a task using org.apache.ignite.compute.ComputeTaskAdapter > > 3. registered the task in the config file used while starting ignite > server > > > > Below are the list of services(each service is exposing a REST endpoint) > created to test this scenario: > > 1. ms1 (spring boot app) > > 2. ser2 (spring mvc app having a rest endpoint to serve the incoming > request) > > 3. ser3 (spring mvc app using Ignite ComputeTaskAdapter to serve the > incoming request from '/ignite'. used ignite's ignite-rest-http.jar to > enable '/ignite' endpoint) > > 4. ms4 (spring boot app) > > 5. ms5 (spring boot app) > > > > Then, there were two scenarios of executions: > > Case1. ms1 -> ser2 -> ms4 -> ms5 ==> we get single unit of traing in > zipkin from ms1 to ms5 (i.e. ms1 -> ser2 -> ms4 -> ms5) > > Case2. ms1 -> ser3 -> ms4 -> ms5 ==> we get two unit of tracing in > zipkin. One is ms1 -> ser3 and another is ser3 -> ms4 -> ms5 > > > > I need to get single unit of tracing in zipkin using Case2 > execution(i.e. as we get in Case1) > > > > The sample app (ser3) is checked-in at > https://github.com/aditya2910/adzzz1/tree/master/ignite-rest-task > > > > Any help will be appreciated. > > Please let me know incase you need any more info. > > > > Thanks, > > Aditya > > This email and any files transmitted with it are confidential, > proprietary and intended solely for the individual or entity to whom they > are addressed. If you have received this email in error please delete it > immediately. > > > > -- > Best regards, > Ivan Pavlukhin > -- Best regards, Andrey Kuznetsov.