Class SiftingAppenderBase<E>

All Implemented Interfaces:
Appender<E>, ContextAware, FilterAttachable<E>, LifeCycle

public abstract class SiftingAppenderBase<E> extends AppenderBase<E>
This appender serves as the base class for actual SiftingAppenders implemented by the logback-classic and logback-access modules. In a nutshell, a SiftingAppender contains other appenders which it can build dynamically depending on discriminating values supplied by the event currently being processed. The appender to build (dynamically) is specified as part of a configuration file.
Author:
Ceki Gülcü
  • Field Details

  • Constructor Details

    • SiftingAppenderBase

      public SiftingAppenderBase()
  • Method Details

    • getTimeout

      public Duration getTimeout()
    • setTimeout

      public void setTimeout(Duration timeout)
    • getSiftModel

      public SiftModel getSiftModel()
    • setSiftModel

      public void setSiftModel(SiftModel siftModel)
    • getMaxAppenderCount

      public int getMaxAppenderCount()
    • setMaxAppenderCount

      public void setMaxAppenderCount(int maxAppenderCount)
    • setAppenderFactory

      public void setAppenderFactory(AppenderFactory<E> appenderFactory)
      This setter is intended to be invoked by SiftModelHandler. Users have no reason to invoke this method directly.
    • start

      public void start()
      Specified by:
      start in interface LifeCycle
      Overrides:
      start in class AppenderBase<E>
    • stop

      public void stop()
      Specified by:
      stop in interface LifeCycle
      Overrides:
      stop in class AppenderBase<E>
    • getTimestamp

      protected abstract long getTimestamp(E event)
    • append

      protected void append(E event)
      Specified by:
      append in class AppenderBase<E>
    • eventMarksEndOfLife

      protected abstract boolean eventMarksEndOfLife(E event)
    • getDiscriminator

      public Discriminator<E> getDiscriminator()
    • setDiscriminator

      public void setDiscriminator(Discriminator<E> discriminator)
    • getAppenderTracker

      public AppenderTracker<E> getAppenderTracker()
      Since:
      0.9.19
    • getDiscriminatorKey

      public String getDiscriminatorKey()