Class CompositeFilter

java.lang.Object
org.apache.logging.log4j.core.AbstractLifeCycle
org.apache.logging.log4j.core.filter.CompositeFilter
All Implemented Interfaces:
Iterable<Filter>, Filter, LifeCycle, LifeCycle2

@Plugin(name="filters", category="Core", printObject=true) public final class CompositeFilter extends AbstractLifeCycle implements Iterable<Filter>, Filter
Composes and invokes one or more filters.
  • Method Details

    • addFilter

      public CompositeFilter addFilter(Filter filter)
    • removeFilter

      public CompositeFilter removeFilter(Filter filter)
    • iterator

      public Iterator<Filter> iterator()
      Specified by:
      iterator in interface Iterable<Filter>
    • getFilters

      @Deprecated public List<Filter> getFilters()
      Deprecated.
      Gets a new list over the internal filter array.
      Returns:
      a new list over the internal filter array
    • getFiltersArray

      public Filter[] getFiltersArray()
    • isEmpty

      public boolean isEmpty()
      Returns whether this composite contains any filters.
      Returns:
      whether this composite contains any filters.
    • size

      public int size()
    • start

      public void start()
      Specified by:
      start in interface LifeCycle
      Overrides:
      start in class AbstractLifeCycle
    • stop

      public boolean stop(long timeout, TimeUnit timeUnit)
      Description copied from interface: LifeCycle2
      Blocks until all tasks have completed execution after a shutdown request, or the timeout occurs, or the current thread is interrupted, whichever happens first.
      Specified by:
      stop in interface LifeCycle2
      Overrides:
      stop in class AbstractLifeCycle
      Parameters:
      timeout - the maximum time to wait
      timeUnit - the time unit of the timeout argument
      Returns:
      true if the receiver was stopped cleanly and normally, false otherwise.
    • getOnMismatch

      public Filter.Result getOnMismatch()
      Returns the result that should be returned when the filter does not match the event.
      Specified by:
      getOnMismatch in interface Filter
      Returns:
      the Result that should be returned when the filter does not match the event.
    • getOnMatch

      public Filter.Result getOnMatch()
      Returns the result that should be returned when the filter matches the event.
      Specified by:
      getOnMatch in interface Filter
      Returns:
      the Result that should be returned when the filter matches the event.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, String msg, Object... params)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - String text to filter on.
      params - An array of parameters or null.
      Returns:
      the Result.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, String msg, Object p0)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - String text to filter on.
      p0 - the message parameters
      Returns:
      the Result.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, String msg, Object p0, Object p1)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - String text to filter on.
      p0 - the message parameters
      p1 - the message parameters
      Returns:
      the Result.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, String msg, Object p0, Object p1, Object p2)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - String text to filter on.
      p0 - the message parameters
      p1 - the message parameters
      p2 - the message parameters
      Returns:
      the Result.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, String msg, Object p0, Object p1, Object p2, Object p3)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - String text to filter on.
      p0 - the message parameters
      p1 - the message parameters
      p2 - the message parameters
      p3 - the message parameters
      Returns:
      the Result.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, String msg, Object p0, Object p1, Object p2, Object p3, Object p4)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - String text to filter on.
      p0 - the message parameters
      p1 - the message parameters
      p2 - the message parameters
      p3 - the message parameters
      p4 - the message parameters
      Returns:
      the Result.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, String msg, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - String text to filter on.
      p0 - the message parameters
      p1 - the message parameters
      p2 - the message parameters
      p3 - the message parameters
      p4 - the message parameters
      p5 - the message parameters
      Returns:
      the Result.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, String msg, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - String text to filter on.
      p0 - the message parameters
      p1 - the message parameters
      p2 - the message parameters
      p3 - the message parameters
      p4 - the message parameters
      p5 - the message parameters
      p6 - the message parameters
      Returns:
      the Result.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, String msg, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - String text to filter on.
      p0 - the message parameters
      p1 - the message parameters
      p2 - the message parameters
      p3 - the message parameters
      p4 - the message parameters
      p5 - the message parameters
      p6 - the message parameters
      p7 - the message parameters
      Returns:
      the Result.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, String msg, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7, Object p8)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - String text to filter on.
      p0 - the message parameters
      p1 - the message parameters
      p2 - the message parameters
      p3 - the message parameters
      p4 - the message parameters
      p5 - the message parameters
      p6 - the message parameters
      p7 - the message parameters
      p8 - the message parameters
      Returns:
      the Result.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, String msg, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7, Object p8, Object p9)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - String text to filter on.
      p0 - the message parameters
      p1 - the message parameters
      p2 - the message parameters
      p3 - the message parameters
      p4 - the message parameters
      p5 - the message parameters
      p6 - the message parameters
      p7 - the message parameters
      p8 - the message parameters
      p9 - the message parameters
      Returns:
      the Result.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, Object msg, Throwable t)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - Any Object.
      t - A Throwable or null.
      Returns:
      the Result.
    • filter

      public Filter.Result filter(Logger logger, Level level, Marker marker, Message msg, Throwable t)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      logger - The Logger.
      level - The event logging Level.
      marker - The Marker for the event or null.
      msg - The Message
      t - A Throwable or null.
      Returns:
      the Result.
    • filter

      public Filter.Result filter(LogEvent event)
      Filter an event.
      Specified by:
      filter in interface Filter
      Parameters:
      event - The Event to filter on.
      Returns:
      the Result.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • createFilters

      @PluginFactory public static CompositeFilter createFilters(@PluginElement("Filters") Filter[] filters)
      Creates a CompositeFilter.
      Parameters:
      filters - An array of Filters to call.
      Returns:
      The CompositeFilter.