You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When using manual instrumentation for tracing with the OpenTelemetry API in a Ratpack 1.x application, the trace context does not propagate correctly through asynchronous operations using the Promise interface. As a result, each handler in the flow creates a new traceId, breaking the trace continuity.
This issue is observed when multiple handlers in the Ratpack pipeline use Promise for asynchronous actions. The expected behavior is that all handlers should propagate the same trace context unless explicitly set otherwise.
The tracing context (e.g., traceId) should propagate across asynchronous boundaries, ensuring that all operations within a single request share the same trace.
Actual behavior
Each handler creates a new traceId, resulting in disjointed traces for a single request. This disrupts the ability to trace the complete flow of the request
Javaagent or library instrumentation version
1.42.1
Environment
JDK: OS:
Additional context
No response
The text was updated successfully, but these errors were encountered:
Describe the bug
When using manual instrumentation for tracing with the OpenTelemetry API in a Ratpack 1.x application, the trace context does not propagate correctly through asynchronous operations using the Promise interface. As a result, each handler in the flow creates a new traceId, breaking the trace continuity.
This issue is observed when multiple handlers in the Ratpack pipeline use Promise for asynchronous actions. The expected behavior is that all handlers should propagate the same trace context unless explicitly set otherwise.
Steps to reproduce
Run the following project
https://github.com/NaveenRamu/ratpack1x-manualinstrumentation.git
Observe the generated traces in logs
Expected behavior
The tracing context (e.g., traceId) should propagate across asynchronous boundaries, ensuring that all operations within a single request share the same trace.
Actual behavior
Each handler creates a new traceId, resulting in disjointed traces for a single request. This disrupts the ability to trace the complete flow of the request
Javaagent or library instrumentation version
1.42.1
Environment
JDK:
OS:
Additional context
No response
The text was updated successfully, but these errors were encountered: