Package io.dropwizard.logback
Class ThrottlingAppenderWrapper<E extends ch.qos.logback.core.spi.DeferredProcessingAware>
java.lang.Object
io.dropwizard.logback.ThrottlingAppenderWrapper<E>
- All Implemented Interfaces:
ch.qos.logback.core.Appender<E>,ch.qos.logback.core.spi.ContextAware,ch.qos.logback.core.spi.FilterAttachable<E>,ch.qos.logback.core.spi.LifeCycle,AsyncAppenderBaseProxy<E>
public class ThrottlingAppenderWrapper<E extends ch.qos.logback.core.spi.DeferredProcessingAware>
extends Object
implements ch.qos.logback.core.Appender<E>, AsyncAppenderBaseProxy<E>
An
AsyncAppenderBase that applies throttling to a proxied appender.
Throttling is defined by an average duration between messages.
Throttled messages are discarded.-
Constructor Summary
ConstructorsConstructorDescriptionThrottlingAppenderWrapper(ch.qos.logback.core.AsyncAppenderBase<E> delegate, long messageRate, TimeUnit rateUnit) -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidvoidvoidvoidvoidaddStatus(ch.qos.logback.core.status.Status status) voidvoidvoidvoidch.qos.logback.core.AsyncAppenderBase<E>ch.qos.logback.core.Contextch.qos.logback.core.spi.FilterReplygetFilterChainDecision(E event) getName()booleanvoidsetContext(ch.qos.logback.core.Context context) voidvoidstart()voidstop()toString()
-
Constructor Details
-
ThrottlingAppenderWrapper
-
-
Method Details
-
getAppender
- Specified by:
getAppenderin interfaceAsyncAppenderBaseProxy<E extends ch.qos.logback.core.spi.DeferredProcessingAware>
-
start
public void start()- Specified by:
startin interfacech.qos.logback.core.spi.LifeCycle
-
stop
public void stop()- Specified by:
stopin interfacech.qos.logback.core.spi.LifeCycle
-
isStarted
public boolean isStarted()- Specified by:
isStartedin interfacech.qos.logback.core.spi.LifeCycle
-
doAppend
- Specified by:
doAppendin interfacech.qos.logback.core.Appender<E extends ch.qos.logback.core.spi.DeferredProcessingAware>- Throws:
ch.qos.logback.core.LogbackException
-
getName
- Specified by:
getNamein interfacech.qos.logback.core.Appender<E extends ch.qos.logback.core.spi.DeferredProcessingAware>
-
setName
- Specified by:
setNamein interfacech.qos.logback.core.Appender<E extends ch.qos.logback.core.spi.DeferredProcessingAware>
-
getContext
public ch.qos.logback.core.Context getContext()- Specified by:
getContextin interfacech.qos.logback.core.spi.ContextAware
-
setContext
public void setContext(ch.qos.logback.core.Context context) - Specified by:
setContextin interfacech.qos.logback.core.spi.ContextAware
-
addStatus
public void addStatus(ch.qos.logback.core.status.Status status) - Specified by:
addStatusin interfacech.qos.logback.core.spi.ContextAware
-
addInfo
- Specified by:
addInfoin interfacech.qos.logback.core.spi.ContextAware
-
addInfo
- Specified by:
addInfoin interfacech.qos.logback.core.spi.ContextAware
-
addWarn
- Specified by:
addWarnin interfacech.qos.logback.core.spi.ContextAware
-
addWarn
- Specified by:
addWarnin interfacech.qos.logback.core.spi.ContextAware
-
addError
- Specified by:
addErrorin interfacech.qos.logback.core.spi.ContextAware
-
addError
- Specified by:
addErrorin interfacech.qos.logback.core.spi.ContextAware
-
addFilter
- Specified by:
addFilterin interfacech.qos.logback.core.spi.FilterAttachable<E extends ch.qos.logback.core.spi.DeferredProcessingAware>
-
clearAllFilters
public void clearAllFilters()- Specified by:
clearAllFiltersin interfacech.qos.logback.core.spi.FilterAttachable<E extends ch.qos.logback.core.spi.DeferredProcessingAware>
-
getCopyOfAttachedFiltersList
- Specified by:
getCopyOfAttachedFiltersListin interfacech.qos.logback.core.spi.FilterAttachable<E extends ch.qos.logback.core.spi.DeferredProcessingAware>
-
getFilterChainDecision
- Specified by:
getFilterChainDecisionin interfacech.qos.logback.core.spi.FilterAttachable<E extends ch.qos.logback.core.spi.DeferredProcessingAware>
-
toString
-