- java.lang.Object
-
- io.helidon.tracing.jersey.AbstractTracingFilter
-
- All Implemented Interfaces:
javax.ws.rs.container.ContainerRequestFilter,javax.ws.rs.container.ContainerResponseFilter
- Direct Known Subclasses:
MpTracingFilter,TracingFilter
@ConstrainedTo(SERVER) @PreMatching public abstract class AbstractTracingFilter extends Object implements javax.ws.rs.container.ContainerRequestFilter, javax.ws.rs.container.ContainerResponseFilter
Tracing filter base.
-
-
Constructor Summary
Constructors Constructor Description AbstractTracingFilter()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract voidconfigureSpan(io.opentracing.Tracer.SpanBuilder spanBuilder)Configure additional properties of a span that is named and has a parent.voidfilter(javax.ws.rs.container.ContainerRequestContext requestContext)voidfilter(javax.ws.rs.container.ContainerRequestContext requestContext, javax.ws.rs.container.ContainerResponseContext responseContext)protected abstract StringspanName(javax.ws.rs.container.ContainerRequestContext context)Create name of the newly created span.protected abstract booleantracingEnabled(javax.ws.rs.container.ContainerRequestContext context)Whether this tracing filter is enabled.protected Stringurl(javax.ws.rs.container.ContainerRequestContext requestContext)Resolves host name based on the "host" header.
-
-
-
Method Detail
-
filter
public void filter(javax.ws.rs.container.ContainerRequestContext requestContext)
- Specified by:
filterin interfacejavax.ws.rs.container.ContainerRequestFilter
-
url
protected String url(javax.ws.rs.container.ContainerRequestContext requestContext)
Resolves host name based on the "host" header. If this header is not set, thenURI.toString()is called.- Parameters:
requestContext- request context- Returns:
- resolved url
-
filter
public void filter(javax.ws.rs.container.ContainerRequestContext requestContext, javax.ws.rs.container.ContainerResponseContext responseContext)- Specified by:
filterin interfacejavax.ws.rs.container.ContainerResponseFilter
-
tracingEnabled
protected abstract boolean tracingEnabled(javax.ws.rs.container.ContainerRequestContext context)
Whether this tracing filter is enabled.- Parameters:
context- request context- Returns:
- true if filter should trigger and start a new span
-
spanName
protected abstract String spanName(javax.ws.rs.container.ContainerRequestContext context)
Create name of the newly created span.- Parameters:
context- request context- Returns:
- name of the span to be created
-
configureSpan
protected abstract void configureSpan(io.opentracing.Tracer.SpanBuilder spanBuilder)
Configure additional properties of a span that is named and has a parent.- Parameters:
spanBuilder- builder of the new span
-
-