Interface ServletFilterSpanDecorator
-
- All Known Implementing Classes:
ServletFilterHeaderSpanDecorator
public interface ServletFilterSpanDecoratorSpanDecorator to decorate span at different stages in filter processing (before filterChain.doFilter(), after and if exception is thrown).- Author:
- Pavol Loffay
-
-
Field Summary
Fields Modifier and Type Field Description static ServletFilterSpanDecoratorSTANDARD_TAGSAdds standard tags to span.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidonError(jakarta.servlet.http.HttpServletRequest httpServletRequest, jakarta.servlet.http.HttpServletResponse httpServletResponse, Throwable exception, io.opentracing.Span span)Decorate span when an exception is thrown during processing inFilter.doFilter(ServletRequest, ServletResponse, FilterChain).voidonRequest(jakarta.servlet.http.HttpServletRequest httpServletRequest, io.opentracing.Span span)Decorate span beforeFilter.doFilter(ServletRequest, ServletResponse, FilterChain)is called.voidonResponse(jakarta.servlet.http.HttpServletRequest httpServletRequest, jakarta.servlet.http.HttpServletResponse httpServletResponse, io.opentracing.Span span)Decorate span afterFilter.doFilter(ServletRequest, ServletResponse, FilterChain).voidonTimeout(jakarta.servlet.http.HttpServletRequest httpServletRequest, jakarta.servlet.http.HttpServletResponse httpServletResponse, long timeout, io.opentracing.Span span)Decorate span on asynchronous request timeout.
-
-
-
Field Detail
-
STANDARD_TAGS
static final ServletFilterSpanDecorator STANDARD_TAGS
Adds standard tags to span.Tags.HTTP_URL,Tags.HTTP_STATUS,Tags.HTTP_METHODandTags.COMPONENT. If an exception duringFilter.doFilter(ServletRequest, ServletResponse, FilterChain)is thrown tagTags.ERRORis added andTags.HTTP_STATUSnot because at this point it is not known.
-
-
Method Detail
-
onRequest
void onRequest(jakarta.servlet.http.HttpServletRequest httpServletRequest, io.opentracing.Span span)Decorate span beforeFilter.doFilter(ServletRequest, ServletResponse, FilterChain)is called. This is called right after span in created. Span is already present in request attributes with nameTracingFilter.SERVER_SPAN_CONTEXT.- Parameters:
httpServletRequest- requestspan- span to decorate
-
onResponse
void onResponse(jakarta.servlet.http.HttpServletRequest httpServletRequest, jakarta.servlet.http.HttpServletResponse httpServletResponse, io.opentracing.Span span)Decorate span afterFilter.doFilter(ServletRequest, ServletResponse, FilterChain). When it is an async request this will be called inAsyncListener.onComplete(AsyncEvent).- Parameters:
httpServletRequest- requesthttpServletResponse- responsespan- span to decorate
-
onError
void onError(jakarta.servlet.http.HttpServletRequest httpServletRequest, jakarta.servlet.http.HttpServletResponse httpServletResponse, Throwable exception, io.opentracing.Span span)Decorate span when an exception is thrown during processing inFilter.doFilter(ServletRequest, ServletResponse, FilterChain). This is also called inAsyncListener.onError(AsyncEvent).- Parameters:
httpServletRequest- requestexception- exceptionspan- span to decorate
-
onTimeout
void onTimeout(jakarta.servlet.http.HttpServletRequest httpServletRequest, jakarta.servlet.http.HttpServletResponse httpServletResponse, long timeout, io.opentracing.Span span)Decorate span on asynchronous request timeout. It is called inAsyncListener.onTimeout(AsyncEvent).- Parameters:
httpServletRequest- requesthttpServletResponse- responsetimeout- timeoutspan- span to decorate
-
-