Class OcHttpServletFilter
- java.lang.Object
-
- io.opencensus.contrib.http.servlet.OcHttpServletFilter
-
- All Implemented Interfaces:
javax.servlet.Filter
@ExperimentalApi public class OcHttpServletFilter extends java.lang.Object implements javax.servlet.Filter
This filter class implements Filter interface called by web container. The filter is used as an interceptor to enable tracing of http requests.- Since:
- 0.19
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static java.lang.String
EXCEPTION_MESSAGE
(package private) static TextFormat.Getter<javax.servlet.http.HttpServletRequest>
getter
(package private) HttpServerHandler<javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest>
handler
static java.lang.String
OC_EXTRACTOR
Set optional OC_EXTRACTOR attribute inServletContext
withHttpExtractor
customExtractor.static java.lang.String
OC_PUBLIC_ENDPOINT
Set optional OC_PUBLIC_ENDPOINT attribute inServletContext
withBoolean
publicEndpoint.static java.lang.String
OC_TRACE_PROPAGATOR
Set optional OC_TRACE_PROPAGATOR attribute inServletContext
withTextFormat
propagator.
-
Constructor Summary
Constructors Constructor Description OcHttpServletFilter()
Creates a newOcHttpServletFilter
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) static HttpServerHandler<javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest>
buildHttpServerHandler()
(package private) static HttpServerHandler<javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest>
buildHttpServerHandlerWithOptions(HttpExtractor<javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse> extractor, TextFormat propagator, java.lang.Boolean publicEndpoint)
void
destroy()
void
doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain)
void
init(javax.servlet.FilterConfig filterConfig)
-
-
-
Field Detail
-
OC_TRACE_PROPAGATOR
public static final java.lang.String OC_TRACE_PROPAGATOR
Set optional OC_TRACE_PROPAGATOR attribute inServletContext
withTextFormat
propagator. By defaultTraceContextFormat
is used to propagate trace context.- Since:
- 0.20
- See Also:
- Constant Field Values
-
OC_EXTRACTOR
public static final java.lang.String OC_EXTRACTOR
Set optional OC_EXTRACTOR attribute inServletContext
withHttpExtractor
customExtractor. Default extractor is used if custom extractor is not provided.- Since:
- 0.20
- See Also:
- Constant Field Values
-
OC_PUBLIC_ENDPOINT
public static final java.lang.String OC_PUBLIC_ENDPOINT
Set optional OC_PUBLIC_ENDPOINT attribute inServletContext
withBoolean
publicEndpoint. set to true for publicly accessible HTTP(S) server. If true then incoming * tracecontext will be added as a link instead of as a parent. By default it is set to true.- Since:
- 0.20
- See Also:
- Constant Field Values
-
EXCEPTION_MESSAGE
static final java.lang.String EXCEPTION_MESSAGE
- See Also:
- Constant Field Values
-
getter
static final TextFormat.Getter<javax.servlet.http.HttpServletRequest> getter
-
handler
HttpServerHandler<javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest> handler
-
-
Method Detail
-
buildHttpServerHandler
static HttpServerHandler<javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest> buildHttpServerHandler()
-
buildHttpServerHandlerWithOptions
static HttpServerHandler<javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,javax.servlet.http.HttpServletRequest> buildHttpServerHandlerWithOptions(HttpExtractor<javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse> extractor, TextFormat propagator, java.lang.Boolean publicEndpoint)
-
init
public void init(javax.servlet.FilterConfig filterConfig) throws javax.servlet.ServletException
- Specified by:
init
in interfacejavax.servlet.Filter
- Throws:
javax.servlet.ServletException
-
doFilter
public void doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain) throws java.io.IOException, javax.servlet.ServletException
- Specified by:
doFilter
in interfacejavax.servlet.Filter
- Throws:
java.io.IOException
javax.servlet.ServletException
-
destroy
public void destroy()
- Specified by:
destroy
in interfacejavax.servlet.Filter
-
-