forked from instana/robot-shop
-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Is your feature request related to a problem? Please describe
We need to implement a scenario in RobotShop involving long-living asynchronous requests between two microservices. One microservice will initiate a trace and send an asynchronous request to the second microservice via REST. The second microservice will respond with a synchronous Ack, and then generate a Callback. This will help us verify how tracing works in this asynchronous setup and ensure that Span Links and TraceIDs are properly handled.
Key tasks:
- Verify and document how auto-instrumentation behaves without any modifications to the code.
- Explore and document the TraceID lifecycle — when it should be interrupted and how to track related traces.
- Reproduce the Span Links case and demonstrate how they are visualized in a simple Tracing Backend (Jaeger).
A UI button should be added to trigger the Callback on the second microservice for demonstration purposes.
Describe the solution you'd like
Create a scenario where two microservices (preferably implemented using Java Quarkus for the second one) interact as follows:
- The first microservice starts a trace and sends an asynchronous REST request to the second microservice.
- The second microservice receives the request and responds with an Ack.
- The second microservice then generates a Callback (triggered via a UI button).
- Ensure that the traces for both services are correctly linked and visible in Jaeger with appropriate Span Links.
The solution should:
- Test auto-instrumentation and observe its behavior without manual code changes.
- Document the TraceID lifecycle, ensuring it is correctly managed between the microservices.
- Reproduce and demonstrate how Span Links work in the Jaeger tracing backend, showing the relationship between the traces.
Describe alternatives you've considered
No response
Additional information
No response
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request
Type
Projects
Status
Backlog