java-spring-web icon indicating copy to clipboard operation
java-spring-web copied to clipboard

Span customization - Extend WebFluxSpanDecorator

Open NHebrard opened this issue 4 years ago • 1 comments

Hello!

I need to customize a span right after its creation and before its activation (injecting some baggage items).

I am encountering this need for both regular Servlet based applications and WebFlux applications.

In the Servlet world, it’s totally feasible thanks to a ServletFilterSpanDecorator.onRequest() which is invoked right after the span creation and before its activation. See TracingFilter.

However, it’s not achievable in the reactor world as the WebFluxSpanDecorator.onRequest() is actually called at the subscription time occurring after the span activation. See TracingOperator and TracingSubscriber.

Could we extend the WebFluxSpanDecorator by adding a new callback onCreate() that would be called right after the span creation? I would also remove This is called right after span in created from the onRequest() documentation as it's not really the case.

Let me know if you agree with the proposal, I'll be happy to contribute! :)

NHebrard avatar Dec 14 '20 13:12 NHebrard

Hi,

That sounds good to me! Feel free to contribute :)

geoand avatar Dec 14 '20 16:12 geoand