Package io.prometheus.client.filter
Class MetricsFilter
- java.lang.Object
-
- io.prometheus.client.filter.MetricsFilter
-
- All Implemented Interfaces:
javax.servlet.Filter
public class MetricsFilter extends Object implements javax.servlet.Filter
The MetricsFilter class exists to provide a high-level filter that enables tunable collection of metrics for Servlet performance.The Histogram name itself is required, and configured with a
metric-nameinit parameter.The help parameter, configured with the
helpinit parameter, is not required but strongly recommended.By default, this filter will provide metrics that distinguish only 1 level deep for the request path (including servlet context path), but can be configured with the
path-componentsinit parameter. Any number provided that is less than 1 will provide the full path granularity (warning, this may affect performance).The Histogram buckets can be configured with a
bucketsinit parameter whose value is a comma-separated list of validdoublevalues.<filter> <filter-name>prometheusFilter</filter-name> <filter-class>io.prometheus.client.filter.MetricsFilter</filter-class> <init-param> <param-name>metric-name</param-name> <param-value>webapp_metrics_filter</param-value> </init-param> <init-param> <param-name>help</param-name> <param-value>The time taken fulfilling servlet requests</param-value> </init-param> <init-param> <param-name>buckets</param-name> <param-value>0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10</param-value> </init-param> <init-param> <param-name>path-components</param-name> <param-value>0</param-value> </init-param> </filter>- Author:
- Andrew Stuart <andrew.stuart2@gmail.com>
-
-
Constructor Summary
Constructors Constructor Description MetricsFilter()MetricsFilter(String metricName, String help, Integer pathComponents, double[] buckets)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddestroy()voiddoFilter(javax.servlet.ServletRequest servletRequest, javax.servlet.ServletResponse servletResponse, javax.servlet.FilterChain filterChain)voidinit(javax.servlet.FilterConfig filterConfig)
-
-
-
Constructor Detail
-
MetricsFilter
public MetricsFilter()
-
MetricsFilter
public MetricsFilter(String metricName, String help, Integer pathComponents, double[] buckets)
-
-
Method Detail
-
init
public void init(javax.servlet.FilterConfig filterConfig) throws javax.servlet.ServletException
- Specified by:
initin interfacejavax.servlet.Filter- Throws:
javax.servlet.ServletException
-
doFilter
public void doFilter(javax.servlet.ServletRequest servletRequest, javax.servlet.ServletResponse servletResponse, javax.servlet.FilterChain filterChain) throws IOException, javax.servlet.ServletException
- Specified by:
doFilterin interfacejavax.servlet.Filter- Throws:
IOExceptionjavax.servlet.ServletException
-
destroy
public void destroy()
- Specified by:
destroyin interfacejavax.servlet.Filter
-
-