[LOG4J2-2420] switch the logging of request processing duration to TRACE level
diff --git a/log4j-audit/log4j-audit-api/src/main/java/org/apache/logging/log4j/audit/rest/RequestContextFilter.java b/log4j-audit/log4j-audit-api/src/main/java/org/apache/logging/log4j/audit/rest/RequestContextFilter.java
index 02acf60..f60263b 100644
--- a/log4j-audit/log4j-audit-api/src/main/java/org/apache/logging/log4j/audit/rest/RequestContextFilter.java
+++ b/log4j-audit/log4j-audit-api/src/main/java/org/apache/logging/log4j/audit/rest/RequestContextFilter.java
@@ -79,11 +79,11 @@
         if (servletRequest instanceof HttpServletRequest) {
             HttpServletRequest request = (HttpServletRequest) servletRequest;
             HttpServletResponse response = (HttpServletResponse) servletResponse;
-            logger.info("Starting request {}", request.getRequestURI());
+            logger.trace("Starting request {}", request.getRequestURI());
             try {
-                Enumeration headers = request.getHeaderNames();
+                Enumeration<String> headers = request.getHeaderNames();
                 while (headers.hasMoreElements()) {
-                    String name = (String) headers.nextElement();
+                    String name = headers.nextElement();
                     RequestContextMapping mapping = mappings.getMappingByHeader(name);
                     logger.debug("Got Mapping:{} for Header:{}", mapping, name);
                     if (mapping != null) {
@@ -99,12 +99,17 @@
                         }
                     }
                 }
-                long start = System.nanoTime();
+                long start = 0;
+                if (logger.isTraceEnabled()) {
+                    start = System.nanoTime();
+                }
                 filterChain.doFilter(servletRequest, servletResponse);
-                long elapsed = System.nanoTime() - start;
-                StringBuilder sb = new StringBuilder("Request ").append(request.getRequestURI()).append(" completed in ");
-                ElapsedUtil.addElapsed(elapsed, sb);
-                logger.info(sb.toString());
+                if (logger.isTraceEnabled()) {
+                    long elapsed = System.nanoTime() - start;
+                    StringBuilder sb = new StringBuilder("Request ").append(request.getRequestURI()).append(" completed in ");
+                    ElapsedUtil.addElapsed(elapsed, sb);
+                    logger.trace(sb.toString());
+                }
             } catch (Throwable e) {
                 logger.error("Application cascaded error", e);
                 response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
diff --git a/log4j-audit/log4j-audit-api/src/main/java/org/apache/logging/log4j/audit/rest/RequestContextHandlerInterceptor.java b/log4j-audit/log4j-audit-api/src/main/java/org/apache/logging/log4j/audit/rest/RequestContextHandlerInterceptor.java
index aed3124..114dbf5 100644
--- a/log4j-audit/log4j-audit-api/src/main/java/org/apache/logging/log4j/audit/rest/RequestContextHandlerInterceptor.java
+++ b/log4j-audit/log4j-audit-api/src/main/java/org/apache/logging/log4j/audit/rest/RequestContextHandlerInterceptor.java
@@ -44,10 +44,10 @@
 
     @Override
     public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object o) throws Exception {
-        logger.info("Starting request {}", request.getRequestURI());
-        Enumeration headers = request.getHeaderNames();
+        logger.trace("Starting request {}", request.getRequestURI());
+        Enumeration<String> headers = request.getHeaderNames();
         while (headers.hasMoreElements()) {
-            String name = (String) headers.nextElement();
+            String name = headers.nextElement();
             RequestContextMapping mapping = mappings.getMappingByHeader(name);
             logger.debug("Got Mapping:{} for Header:{}", mapping, name);
             if (mapping != null) {
@@ -63,17 +63,21 @@
                 }
             }
         }
-        startTime.set(System.nanoTime());
+        if (logger.isTraceEnabled()) {
+            startTime.set(System.nanoTime());
+        }
         return true;
     }
 
     @Override
     public void postHandle(HttpServletRequest request, HttpServletResponse response, Object o, ModelAndView modelAndView) throws Exception {
-        long elapsed = System.nanoTime() - startTime.get();
-        StringBuilder sb = new StringBuilder("Request ").append(request.getRequestURI()).append(" completed in ");
-        ElapsedUtil.addElapsed(elapsed, sb);
-        logger.info(sb.toString());
-        startTime.remove();
+        if (logger.isTraceEnabled()) {
+            long elapsed = System.nanoTime() - startTime.get();
+            StringBuilder sb = new StringBuilder("Request ").append(request.getRequestURI()).append(" completed in ");
+            ElapsedUtil.addElapsed(elapsed, sb);
+            logger.trace(sb.toString());
+            startTime.remove();
+        }
     }
 
     @Override