Class JesterJAppender

  • 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="JesterJAppender",
            category="Core",
            elementType="appender")
    public class JesterJAppender
    extends org.apache.logging.log4j.core.appender.AbstractAppender
    • 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 
      Modifier and Type Field Description
      static java.lang.String DELIM  
      static java.lang.String FTI_INSERT_U  
      static int FTI_TTL  
      static java.util.regex.Pattern MESSAGE_DELIMITER  
      static java.util.List<DocumentLoggingContext.ContextNames> PER_EVENT_CONTEXT  
      static java.lang.String REG_INSERT_U  
      • 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 JesterJAppender​(java.lang.String name, org.apache.logging.log4j.core.Filter filter, org.apache.logging.log4j.core.Layout<? extends java.io.Serializable> layout)  
      protected JesterJAppender​(java.lang.String name, org.apache.logging.log4j.core.Filter filter, org.apache.logging.log4j.core.Layout<? extends java.io.Serializable> layout, boolean ignoreExceptions)  
        JesterJAppender​(java.lang.String name, org.apache.logging.log4j.core.Layout<? extends java.io.Serializable> layout, org.apache.logging.log4j.core.Filter filter, CassandraLog4JManager manager, boolean ignoreExceptions)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void append​(org.apache.logging.log4j.core.LogEvent event)
      Write events to cassandra.
      static JesterJAppender createAppender​(java.lang.String name, boolean ignoreExceptions, org.apache.logging.log4j.core.Layout<? extends java.io.Serializable> layout, org.apache.logging.log4j.core.Filter filter)  
      • 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, 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, stop
    • Constructor Detail

      • JesterJAppender

        protected JesterJAppender​(java.lang.String name,
                                  org.apache.logging.log4j.core.Filter filter,
                                  org.apache.logging.log4j.core.Layout<? extends java.io.Serializable> layout)
      • JesterJAppender

        protected JesterJAppender​(java.lang.String name,
                                  org.apache.logging.log4j.core.Filter filter,
                                  org.apache.logging.log4j.core.Layout<? extends java.io.Serializable> layout,
                                  boolean ignoreExceptions)
      • JesterJAppender

        public JesterJAppender​(java.lang.String name,
                               org.apache.logging.log4j.core.Layout<? extends java.io.Serializable> layout,
                               org.apache.logging.log4j.core.Filter filter,
                               CassandraLog4JManager manager,
                               boolean ignoreExceptions)
    • Method Detail

      • createAppender

        @PluginFactory
        public static JesterJAppender createAppender​(@PluginAttribute("name")
                                                     java.lang.String name,
                                                     @PluginAttribute("ignoreExceptions")
                                                     boolean ignoreExceptions,
                                                     @PluginElement("Layout")
                                                     org.apache.logging.log4j.core.Layout<? extends java.io.Serializable> layout,
                                                     @PluginElement("Filters")
                                                     org.apache.logging.log4j.core.Filter filter)
      • append

        public void append​(org.apache.logging.log4j.core.LogEvent event)
        Write events to cassandra. If cassandra is booting log events are cached. Once cassandra has booted the first subsequent event will synchronize on the queue and begin draining the queue. During this drain all logging events will need to acquire this lock. At the end of the drain the queue will be nullified. Subsequent writes will then be processed immediately.
        Parameters:
        event - the event to write to the log.