public class JaxRsMetricsFilter extends Object implements javax.ws.rs.container.ContainerRequestFilter, javax.ws.rs.container.ContainerResponseFilter
JaxRsMetricsServletFilter.
The reason for having two filters (one based on Servlet API, one on JAX-RS API)
is to overcome the limitation of JAX-RS specification in that it does not require
implementations to call a ContainerResponseFilter to finish exchanges that led
to an unmapped exception. That's why we can't use a ContainerResponseFilter to
'finish' the tracking of a REST call and update the corresponding metrics.
For that reason, we have JaxRsMetricsServletFilter, which is a Servlet Filter,
to hook into the responses in this case.
To get all of this logic working on a target runtime server, it is necessary to register both the
JaxRsMetricsServletFilter and JaxRsMetricsFilter to handle incoming requests.
JaxRsMetricsServletFilter must run first, but this will probably be the case always.| Constructor and Description |
|---|
JaxRsMetricsFilter() |
| Modifier and Type | Method and Description |
|---|---|
void |
filter(javax.ws.rs.container.ContainerRequestContext requestContext) |
void |
filter(javax.ws.rs.container.ContainerRequestContext requestContext,
javax.ws.rs.container.ContainerResponseContext responseContext) |
public void filter(javax.ws.rs.container.ContainerRequestContext requestContext)
filter in interface javax.ws.rs.container.ContainerRequestFilterpublic void filter(javax.ws.rs.container.ContainerRequestContext requestContext,
javax.ws.rs.container.ContainerResponseContext responseContext)
throws IOException
filter in interface javax.ws.rs.container.ContainerResponseFilterIOExceptionCopyright © 2018–2021. All rights reserved.