Class BurstFilter

  • All Implemented Interfaces:
    Filter, LifeCycle, LifeCycle2

    @Plugin(name="BurstFilter",
            category="Core",
            elementType="filter",
            printObject=true)
    public final class BurstFilter
    extends AbstractFilter
    The BurstFilter is a logging filter that regulates logging traffic.

    Use this filter when you want to control the maximum burst of log statements that can be sent to an appender. The filter is configured in the log4j configuration file. For example, the following configuration limits the number of INFO level (as well as DEBUG and TRACE) log statements that can be sent to the console to a burst of 100 with an average rate of 16 per second. WARN, ERROR and FATAL messages would continue to be delivered.

    <Console name="console">
     <PatternLayout pattern="%-5p %d{dd-MMM-yyyy HH:mm:ss} %x %t %m%n"/>
     <filters>
      <Burst level="INFO" rate="16" maxBurst="100"/>
     </filters>
    </Console>

    • Method Detail

      • filter

        public Filter.Result filter​(Logger logger,
                                    Level level,
                                    Marker marker,
                                    String msg,
                                    Object... params)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        params - An array of parameters or null.
        Returns:
        The Result of filtering.
      • filter

        public Filter.Result filter​(Logger logger,
                                    Level level,
                                    Marker marker,
                                    Object msg,
                                    Throwable t)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        t - A throwable or null.
        Returns:
        The Result of filtering.
      • filter

        public Filter.Result filter​(Logger logger,
                                    Level level,
                                    Marker marker,
                                    Message msg,
                                    Throwable t)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        t - A throwable or null.
        Returns:
        The Result of filtering.
      • filter

        public Filter.Result filter​(Logger logger,
                                    Level level,
                                    Marker marker,
                                    String msg,
                                    Object p0)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        p0 - the message parameters
        Returns:
        The Result of filtering.
      • filter

        public Filter.Result filter​(Logger logger,
                                    Level level,
                                    Marker marker,
                                    String msg,
                                    Object p0,
                                    Object p1)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        p0 - the message parameters
        p1 - the message parameters
        Returns:
        The Result of filtering.
      • filter

        public Filter.Result filter​(Logger logger,
                                    Level level,
                                    Marker marker,
                                    String msg,
                                    Object p0,
                                    Object p1,
                                    Object p2)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        p0 - the message parameters
        p1 - the message parameters
        p2 - the message parameters
        Returns:
        The Result of filtering.
      • filter

        public Filter.Result filter​(Logger logger,
                                    Level level,
                                    Marker marker,
                                    String msg,
                                    Object p0,
                                    Object p1,
                                    Object p2,
                                    Object p3)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        p0 - the message parameters
        p1 - the message parameters
        p2 - the message parameters
        p3 - the message parameters
        Returns:
        The Result of filtering.
      • filter

        public Filter.Result filter​(Logger logger,
                                    Level level,
                                    Marker marker,
                                    String msg,
                                    Object p0,
                                    Object p1,
                                    Object p2,
                                    Object p3,
                                    Object p4)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        p0 - the message parameters
        p1 - the message parameters
        p2 - the message parameters
        p3 - the message parameters
        p4 - the message parameters
        Returns:
        The Result of filtering.
      • 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)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        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 of filtering.
      • 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)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        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 of filtering.
      • 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)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        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 of filtering.
      • 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)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        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 of filtering.
      • 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)
        Description copied from class: AbstractFilter
        Appender Filter method. The default returns NEUTRAL.
        Specified by:
        filter in interface Filter
        Overrides:
        filter in class AbstractFilter
        Parameters:
        logger - the Logger.
        level - The logging Level.
        marker - The Marker, if any.
        msg - The message, if present.
        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 of filtering.
      • getAvailable

        public int getAvailable()
        Returns the number of available slots. Used for unit testing.
        Returns:
        The number of available slots.
      • clear

        public void clear()
        Clear the history. Used for unit testing.