Class MemoryAppender

java.lang.Object
org.apache.logging.log4j.core.AbstractLifeCycle
org.apache.logging.log4j.core.filter.AbstractFilterable
org.apache.logging.log4j.core.appender.AbstractAppender
org.graylog2.log4j.MemoryAppender
All Implemented Interfaces:
org.apache.logging.log4j.core.Appender, org.apache.logging.log4j.core.filter.Filterable, org.apache.logging.log4j.core.impl.LocationAware, org.apache.logging.log4j.core.LifeCycle, org.apache.logging.log4j.core.LifeCycle2

@Plugin(name="Memory", category="Core", elementType="appender", printObject=true) public class MemoryAppender extends org.apache.logging.log4j.core.appender.AbstractAppender
A Log4J appender that keeps a configurable number of messages in memory. Used to make recent internal log messages available via the REST API.
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.apache.logging.log4j.core.appender.AbstractAppender

    org.apache.logging.log4j.core.appender.AbstractAppender.Builder<B extends org.apache.logging.log4j.core.appender.AbstractAppender.Builder<B>>

    Nested classes/interfaces inherited from interface org.apache.logging.log4j.core.LifeCycle

    org.apache.logging.log4j.core.LifeCycle.State
  • Field Summary

    Fields inherited from class org.apache.logging.log4j.core.AbstractLifeCycle

    DEFAULT_STOP_TIMEOUT, DEFAULT_STOP_TIMEUNIT, LOGGER

    Fields inherited from interface org.apache.logging.log4j.core.Appender

    ELEMENT_TYPE, EMPTY_ARRAY
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    MemoryAppender(String name, org.apache.logging.log4j.core.Filter filter, org.apache.logging.log4j.core.Layout<? extends Serializable> layout, boolean ignoreExceptions, long bufferSize)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    append(org.apache.logging.log4j.core.LogEvent event)
     
    createAppender(org.apache.logging.log4j.core.Layout<? extends Serializable> layout, org.apache.logging.log4j.core.Filter filter, String name, String bufSizeLegacy, String bufferSizeBytes, String ignore)
     
    long
     
    void
     
    void
    streamFormattedLogMessages(OutputStream outputStream, int limit)
     

    Methods inherited from class org.apache.logging.log4j.core.appender.AbstractAppender

    error, error, error, getHandler, getLayout, getName, ignoreExceptions, parseInt, requiresLocation, setHandler, toSerializable, toString

    Methods inherited from class org.apache.logging.log4j.core.filter.AbstractFilterable

    addFilter, getFilter, getPropertyArray, hasFilter, isFiltered, removeFilter, start, stop, stop

    Methods inherited from class org.apache.logging.log4j.core.AbstractLifeCycle

    equalsImpl, getState, getStatusLogger, hashCodeImpl, initialize, isInitialized, isStarted, isStarting, isStopped, isStopping, setStarted, setStarting, setState, setStopped, setStopping, stop

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.apache.logging.log4j.core.LifeCycle

    getState, initialize, isStarted, isStopped, start
  • Constructor Details

    • MemoryAppender

      protected MemoryAppender(String name, org.apache.logging.log4j.core.Filter filter, org.apache.logging.log4j.core.Layout<? extends Serializable> layout, boolean ignoreExceptions, long bufferSize)
  • Method Details

    • createAppender

      @PluginFactory public static MemoryAppender createAppender(@PluginElement("Layout") org.apache.logging.log4j.core.Layout<? extends Serializable> layout, @PluginElement("Filter") org.apache.logging.log4j.core.Filter filter, @PluginAttribute("name") String name, @PluginAttribute("bufferSize") String bufSizeLegacy, @PluginAttribute(value="bufferSizeBytes",defaultString="50MB") String bufferSizeBytes, @PluginAttribute(value="ignoreExceptions",defaultBoolean=true) String ignore)
    • append

      public void append(org.apache.logging.log4j.core.LogEvent event)
    • stop

      public void stop()
      Specified by:
      stop in interface org.apache.logging.log4j.core.LifeCycle
      Overrides:
      stop in class org.apache.logging.log4j.core.AbstractLifeCycle
    • streamFormattedLogMessages

      public void streamFormattedLogMessages(OutputStream outputStream, int limit)
    • getLogsSize

      public long getLogsSize()