Package ch.qos.logback.access.tomcat
Class LogbackValve
java.lang.Object
org.apache.catalina.util.LifecycleBase
org.apache.catalina.util.LifecycleMBeanBase
org.apache.catalina.valves.ValveBase
ch.qos.logback.access.tomcat.LogbackValve
- All Implemented Interfaces:
Context,AppenderAttachable<IAccessEvent>,FilterAttachable<IAccessEvent>,PropertyContainer,MBeanRegistration,org.apache.catalina.Contained,org.apache.catalina.JmxEnabled,org.apache.catalina.Lifecycle,org.apache.catalina.Valve
public class LogbackValve
extends org.apache.catalina.valves.ValveBase
implements org.apache.catalina.Lifecycle, Context, AppenderAttachable<IAccessEvent>, FilterAttachable<IAccessEvent>
This class is an implementation of tomcat's Valve interface, by extending
ValveBase.
For more information on using LogbackValve please refer to the online documentation on logback-acces and tomcat.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.catalina.Lifecycle
org.apache.catalina.Lifecycle.SingleUse -
Field Summary
FieldsModifier and TypeFieldDescription(package private) AppenderAttachableImpl<IAccessEvent> (package private) booleanprivate long(package private) static final String(package private) static final String(package private) LogbackLockstatic final Stringstatic final Stringprivate FilterAttachableImpl<IAccessEvent> (package private) Stringprivate final LifeCycleManagerprivate String(package private) booleanprivate ScheduledExecutorService(package private) StatusManager(package private) booleanFields inherited from class org.apache.catalina.valves.ValveBase
asyncSupported, container, containerLog, nextFields inherited from class org.apache.catalina.util.LifecycleMBeanBase
mserverFields inherited from interface org.apache.catalina.Lifecycle
AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddAppender(Appender<IAccessEvent> newAppender) Add an appender.voidvoidaddFilter(Filter<IAccessEvent> newFilter) Add a filter.voidvoidaddLifecycleListener(org.apache.catalina.LifecycleListener arg0) voidaddScheduledFuture(ScheduledFuture<?> scheduledFuture) voidprivate voidaddThreadName(IAccessEvent accessEvent) voidvoidprivate voidconfigureAsResource(URL resourceURL) voidDetach and processPriorToRemoval all previously added appenders.booleandetachAppender(Appender<IAccessEvent> appender) Detach the appender passed as parameter from the list of appenders.booleandetachAppender(String name) Detach the appender with the name passed as parameter from the list of appenders.private URLorg.apache.catalina.LifecycleListener[]getAppender(String name) Get an appender by name.longThe time at which this context was created, expressed in millisecond elapsed since the epoch (1.1.1970).Object used for synchronization purposes.Get a copy of all the filters contained within this FilterAttachable object.Get a copy of the property mapEvery context has an ExecutorService which be invoked to execute certain tasks in a separate thread.Loop through the filters in the chain.getInfo()getName()Contexts are named objects.A Context can act as a store for various objects used by LOGBack components.getProperty(String key) Get the property of this context.Returns the ScheduledExecutorService for this context.Return the StatusManager instance in use.voidinvoke(org.apache.catalina.connector.Request request, org.apache.catalina.connector.Response response) booleanisAttached(Appender<IAccessEvent> appender) Returnstrueif the specified appender is in list of attached attached,falseotherwise.booleanisQuiet()booleanGet an iterator for appenders contained in the parent object.voidStore an object under 'key'.voidputProperty(String key, String val) Set a property of this context.voidRegister a component that participates in the context's life cycle.voidremoveLifecycleListener(org.apache.catalina.LifecycleListener arg0) private URLsearchAsResource(String filename) private FilesearchForConfigFileTomcatProperty(String filename, String propertyKey) voidsetFilename(String filename) voidThe name of the context can be set only once.voidsetQuiet(boolean quiet) voidprotected voidtoString()Methods inherited from class org.apache.catalina.valves.ValveBase
backgroundProcess, getContainer, getDomainInternal, getNext, getObjectNameKeyProperties, initInternal, isAsyncSupported, setAsyncSupported, setContainer, setNextMethods inherited from class org.apache.catalina.util.LifecycleMBeanBase
destroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister, unregisterMethods inherited from class org.apache.catalina.util.LifecycleBase
destroy, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, setState, setState, setThrowOnFailure, start, stopMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.catalina.Lifecycle
destroy, getState, getStateName, init, start, stop
-
Field Details
-
DEFAULT_FILENAME
- See Also:
-
DEFAULT_CONFIG_FILE
-
CATALINA_BASE_KEY
- See Also:
-
CATALINA_HOME_KEY
- See Also:
-
lifeCycleManager
-
birthTime
private long birthTime -
configurationLock
LogbackLock configurationLock -
name
-
sm
-
propertyMap
-
objectMap
-
fai
-
aai
-
filenameOption
String filenameOption -
quiet
boolean quiet -
started
boolean started -
alreadySetLogbackStatusManager
boolean alreadySetLogbackStatusManager -
scheduledExecutorService
-
-
Constructor Details
-
LogbackValve
public LogbackValve()
-
-
Method Details
-
isStarted
public boolean isStarted() -
startInternal
public void startInternal() throws org.apache.catalina.LifecycleException- Overrides:
startInternalin classorg.apache.catalina.valves.ValveBase- Throws:
org.apache.catalina.LifecycleException
-
fileToUrl
-
searchAsResource
-
searchForConfigFileTomcatProperty
-
addStatus
-
addInfo
-
addWarn
-
addError
-
configureAsResource
-
getFilename
-
setFilename
-
isQuiet
public boolean isQuiet() -
setQuiet
public void setQuiet(boolean quiet) -
invoke
public void invoke(org.apache.catalina.connector.Request request, org.apache.catalina.connector.Response response) throws IOException, javax.servlet.ServletException - Specified by:
invokein interfaceorg.apache.catalina.Valve- Throws:
IOExceptionjavax.servlet.ServletException
-
addThreadName
-
stopInternal
protected void stopInternal() throws org.apache.catalina.LifecycleException- Overrides:
stopInternalin classorg.apache.catalina.valves.ValveBase- Throws:
org.apache.catalina.LifecycleException
-
addAppender
Description copied from interface:AppenderAttachableAdd an appender.- Specified by:
addAppenderin interfaceAppenderAttachable<IAccessEvent>
-
iteratorForAppenders
Description copied from interface:AppenderAttachableGet an iterator for appenders contained in the parent object.- Specified by:
iteratorForAppendersin interfaceAppenderAttachable<IAccessEvent>
-
getAppender
Description copied from interface:AppenderAttachableGet an appender by name.- Specified by:
getAppenderin interfaceAppenderAttachable<IAccessEvent>
-
isAttached
Description copied from interface:AppenderAttachableReturnstrueif the specified appender is in list of attached attached,falseotherwise.- Specified by:
isAttachedin interfaceAppenderAttachable<IAccessEvent>
-
detachAndStopAllAppenders
public void detachAndStopAllAppenders()Description copied from interface:AppenderAttachableDetach and processPriorToRemoval all previously added appenders.- Specified by:
detachAndStopAllAppendersin interfaceAppenderAttachable<IAccessEvent>
-
detachAppender
Description copied from interface:AppenderAttachableDetach the appender passed as parameter from the list of appenders.- Specified by:
detachAppenderin interfaceAppenderAttachable<IAccessEvent>
-
detachAppender
Description copied from interface:AppenderAttachableDetach the appender with the name passed as parameter from the list of appenders.- Specified by:
detachAppenderin interfaceAppenderAttachable<IAccessEvent>
-
getInfo
-
getStatusManager
Description copied from interface:ContextReturn the StatusManager instance in use.- Specified by:
getStatusManagerin interfaceContext- Returns:
- the
StatusManagerinstance in use.
-
getPropertyMap
-
putProperty
Description copied from interface:ContextSet a property of this context.- Specified by:
putPropertyin interfaceContext
-
getProperty
Description copied from interface:ContextGet the property of this context.- Specified by:
getPropertyin interfaceContext- Specified by:
getPropertyin interfacePropertyContainer
-
getCopyOfPropertyMap
Description copied from interface:ContextGet a copy of the property map- Specified by:
getCopyOfPropertyMapin interfaceContext- Specified by:
getCopyOfPropertyMapin interfacePropertyContainer- Returns:
-
getObject
Description copied from interface:ContextA Context can act as a store for various objects used by LOGBack components. -
putObject
Description copied from interface:ContextStore an object under 'key'. If no object can be found, null is returned. -
addFilter
Description copied from interface:FilterAttachableAdd a filter.- Specified by:
addFilterin interfaceFilterAttachable<IAccessEvent>
-
clearAllFilters
public void clearAllFilters()- Specified by:
clearAllFiltersin interfaceFilterAttachable<IAccessEvent>
-
getCopyOfAttachedFiltersList
Description copied from interface:FilterAttachableGet a copy of all the filters contained within this FilterAttachable object.- Specified by:
getCopyOfAttachedFiltersListin interfaceFilterAttachable<IAccessEvent>- Returns:
- all attached filters as a list
-
getFilterChainDecision
Description copied from interface:FilterAttachableLoop through the filters in the chain. As soon as a filter decides on ACCEPT or DENY, then that value is returned. If all of the filters return NEUTRAL, then NEUTRAL is returned.- Specified by:
getFilterChainDecisionin interfaceFilterAttachable<IAccessEvent>
-
getExecutorService
Description copied from interface:ContextEvery context has an ExecutorService which be invoked to execute certain tasks in a separate thread.- Specified by:
getExecutorServicein interfaceContext- Returns:
- the executor for this context.
-
getName
Description copied from interface:ContextContexts are named objects. -
setName
Description copied from interface:ContextThe name of the context can be set only once. -
getBirthTime
public long getBirthTime()Description copied from interface:ContextThe time at which this context was created, expressed in millisecond elapsed since the epoch (1.1.1970).- Specified by:
getBirthTimein interfaceContext- Returns:
- The time as measured when this class was created.
-
getConfigurationLock
Description copied from interface:ContextObject used for synchronization purposes. INTENDED FOR INTERNAL USAGE.- Specified by:
getConfigurationLockin interfaceContext
-
register
Description copied from interface:ContextRegister a component that participates in the context's life cycle.All components registered via this method will be stopped and removed from the context when the context is reset.
-
addLifecycleListener
public void addLifecycleListener(org.apache.catalina.LifecycleListener arg0) - Specified by:
addLifecycleListenerin interfaceorg.apache.catalina.Lifecycle- Overrides:
addLifecycleListenerin classorg.apache.catalina.util.LifecycleBase
-
findLifecycleListeners
public org.apache.catalina.LifecycleListener[] findLifecycleListeners()- Specified by:
findLifecycleListenersin interfaceorg.apache.catalina.Lifecycle- Overrides:
findLifecycleListenersin classorg.apache.catalina.util.LifecycleBase
-
removeLifecycleListener
public void removeLifecycleListener(org.apache.catalina.LifecycleListener arg0) - Specified by:
removeLifecycleListenerin interfaceorg.apache.catalina.Lifecycle- Overrides:
removeLifecycleListenerin classorg.apache.catalina.util.LifecycleBase
-
toString
- Overrides:
toStringin classorg.apache.catalina.valves.ValveBase
-
getScheduledExecutorService
Description copied from interface:ContextReturns the ScheduledExecutorService for this context.- Specified by:
getScheduledExecutorServicein interfaceContext- Returns:
-
addScheduledFuture
- Specified by:
addScheduledFuturein interfaceContext
-