public abstract class AbstractQueryCountLoggingServletFilter extends Object implements javax.servlet.Filter
By default, after logging the query count, it resets the QueryCountHolder, so that
each http request will have fresh set of query statistics.
If you want to manage when to reset the counter, you can disable this filter to clear the counter by setting
filter parameter clearQueryCounter to false.
<filter>
<filter-name>count</filter-name>
<filter-class>net.ttddyy.dsproxy.support.CommonsQueryCountLoggingFilter</filter-class>
<init-param>
<param-name>logLevel</param-name>
<param-value>INFO</param-value>
<init-param>
<init-param>
<param-name>clearQueryCounter</param-name>
<param-value>false</param-value>
<init-param>
</filter>
CommonsQueryCountLoggingServletFilter,
SLF4JQueryCountLoggingServletFilter| Modifier and Type | Field and Description |
|---|---|
static String |
CLEAR_QUERY_COUNTER_PARAM |
protected boolean |
clearQueryCounter |
static String |
FORMAT_PARAM |
static String |
LOG_LEVEL_PARAM |
protected QueryCountLogEntryCreator |
logFormatter |
protected boolean |
writeAsJson |
| Constructor and Description |
|---|
AbstractQueryCountLoggingServletFilter() |
| Modifier and Type | Method and Description |
|---|---|
void |
destroy() |
void |
doFilter(javax.servlet.ServletRequest request,
javax.servlet.ServletResponse response,
javax.servlet.FilterChain chain) |
void |
init(javax.servlet.FilterConfig filterConfig) |
protected abstract void |
initLogLevelFromFilterConfigIfSpecified(String logLevelParam) |
void |
setClearQueryCounter(boolean clearQueryCounter) |
void |
setLogFormatter(QueryCountLogEntryCreator logFormatter) |
void |
setWriteAsJson(boolean writeAsJson) |
protected abstract void |
writeLog(String message) |
public static final String CLEAR_QUERY_COUNTER_PARAM
public static final String LOG_LEVEL_PARAM
public static final String FORMAT_PARAM
protected boolean clearQueryCounter
protected boolean writeAsJson
protected QueryCountLogEntryCreator logFormatter
public AbstractQueryCountLoggingServletFilter()
public void init(javax.servlet.FilterConfig filterConfig)
throws javax.servlet.ServletException
init in interface javax.servlet.Filterjavax.servlet.ServletExceptionpublic void doFilter(javax.servlet.ServletRequest request,
javax.servlet.ServletResponse response,
javax.servlet.FilterChain chain)
throws IOException,
javax.servlet.ServletException
doFilter in interface javax.servlet.FilterIOExceptionjavax.servlet.ServletExceptionpublic void destroy()
destroy in interface javax.servlet.Filterprotected abstract void initLogLevelFromFilterConfigIfSpecified(String logLevelParam)
protected abstract void writeLog(String message)
public void setClearQueryCounter(boolean clearQueryCounter)
public void setLogFormatter(QueryCountLogEntryCreator logFormatter)
public void setWriteAsJson(boolean writeAsJson)
Copyright © 2015. All rights reserved.