public class RequestLoggingFilter extends Object implements javax.servlet.Filter
FilterChain that handles HttpServletRequest and HttpSession state. State information
that is recorded in logs is:
| Constructor and Description |
|---|
RequestLoggingFilter() |
| Modifier and Type | Method and Description |
|---|---|
void |
destroy() |
void |
doFilter(javax.servlet.ServletRequest request,
javax.servlet.ServletResponse response,
javax.servlet.FilterChain chain)
Does the actual logging.
|
void |
init(javax.servlet.FilterConfig config) |
protected boolean |
isInfoNotAllowed()
Determine if the logging is allowed by using
Log.isInfoEnabled(). |
public void destroy()
destroy in interface javax.servlet.FilterFilter.destroy()public void init(javax.servlet.FilterConfig config)
throws javax.servlet.ServletException
init in interface javax.servlet.Filterjavax.servlet.ServletExceptionFilter.init(FilterConfig)public void doFilter(javax.servlet.ServletRequest request,
javax.servlet.ServletResponse response,
javax.servlet.FilterChain chain)
throws IOException,
javax.servlet.ServletException
Does the actual logging. The log4j.properties file already covers user and date/time logging for us, so the only thing that gets logged in INFO here is the intended action.
Inefficiency:Currently, an action map is being used to determine the intended action of the user.
doFilter in interface javax.servlet.FilterIOExceptionjavax.servlet.ServletExceptionFilter.doFilter(ServletRequest,ServletResponse,FilterChain)protected boolean isInfoNotAllowed()
Log.isInfoEnabled(). Currently the INFO level
is required for logging here. It is possible that by extending this class and overriding #isLoggingAllowed() the
required log level can be adjusted.Log.isInfoEnabled() directly.Copyright © 2013 The Kuali Foundation. All Rights Reserved.