Class SlowRequestFilter

  • All Implemented Interfaces:
    jakarta.servlet.Filter

    public class SlowRequestFilter
    extends Object
    implements jakarta.servlet.Filter
    A servlet filter which logs the methods and URIs of requests which take longer than a given duration of time to complete.
    • Constructor Detail

      • SlowRequestFilter

        public SlowRequestFilter()
        Creates a filter which logs requests which take longer than 1 second.
      • SlowRequestFilter

        public SlowRequestFilter​(Duration threshold)
        Creates a filter which logs requests which take longer than the given duration.
        Parameters:
        threshold - the threshold for considering a request slow
    • Method Detail

      • init

        public void init​(jakarta.servlet.FilterConfig filterConfig)
                  throws jakarta.servlet.ServletException
        Specified by:
        init in interface jakarta.servlet.Filter
        Throws:
        jakarta.servlet.ServletException
      • destroy

        public void destroy()
        Specified by:
        destroy in interface jakarta.servlet.Filter
      • doFilter

        public void doFilter​(jakarta.servlet.ServletRequest request,
                             jakarta.servlet.ServletResponse response,
                             jakarta.servlet.FilterChain chain)
                      throws IOException,
                             jakarta.servlet.ServletException
        Specified by:
        doFilter in interface jakarta.servlet.Filter
        Throws:
        IOException
        jakarta.servlet.ServletException