Class AbstractOutputStreamAppender<M extends OutputStreamManager>
java.lang.Object
org.apache.logging.log4j.core.AbstractLifeCycle
org.apache.logging.log4j.core.filter.AbstractFilterable
org.apache.logging.log4j.core.appender.AbstractAppender
org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender<M>
- Type Parameters:
M
- The kind ofOutputStreamManager
under management
- All Implemented Interfaces:
Appender
,Filterable
,LocationAware
,LifeCycle
,LifeCycle2
- Direct Known Subclasses:
AbstractFileAppender
,ConsoleAppender
,FileAppender
,MemoryMappedFileAppender
,OutputStreamAppender
,RandomAccessFileAppender
,RollingFileAppender
,RollingRandomAccessFileAppender
,SocketAppender
public abstract class AbstractOutputStreamAppender<M extends OutputStreamManager>
extends AbstractAppender
Appends log events as bytes to a byte output stream. The stream encoding is defined in the layout.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Subclasses can extend this abstract Builder.Nested classes/interfaces inherited from interface org.apache.logging.log4j.core.LifeCycle
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
ModifierConstructorDescriptionprotected
AbstractOutputStreamAppender
(String name, Layout<? extends Serializable> layout, Filter filter, boolean ignoreExceptions, boolean immediateFlush, M manager) Deprecated.protected
AbstractOutputStreamAppender
(String name, Layout<? extends Serializable> layout, Filter filter, boolean ignoreExceptions, boolean immediateFlush, Property[] properties, M manager) Instantiates a WriterAppender and set the output destination to a newOutputStreamWriter
initialized withos
as itsOutputStream
. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Actual writing occurs here.protected void
directEncodeEvent
(LogEvent event) boolean
Gets the immediate flush setting.Gets the manager.void
start()
Make the Filter available for use.boolean
Cleanup the Filter.protected boolean
Cleanup the Filter.protected void
writeByteArrayToManager
(LogEvent event) 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
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
-
Constructor Details
-
AbstractOutputStreamAppender
@Deprecated protected AbstractOutputStreamAppender(String name, Layout<? extends Serializable> layout, Filter filter, boolean ignoreExceptions, boolean immediateFlush, M manager) Deprecated.Instantiates a WriterAppender and set the output destination to a newOutputStreamWriter
initialized withos
as itsOutputStream
.- Parameters:
name
- The name of the Appender.layout
- The layout to format the message.manager
- The OutputStreamManager.
-
AbstractOutputStreamAppender
protected AbstractOutputStreamAppender(String name, Layout<? extends Serializable> layout, Filter filter, boolean ignoreExceptions, boolean immediateFlush, Property[] properties, M manager) Instantiates a WriterAppender and set the output destination to a newOutputStreamWriter
initialized withos
as itsOutputStream
.- Parameters:
name
- The name of the Appender.layout
- The layout to format the message.filter
- The filter to associate with the Appender.ignoreExceptions
- If true, exceptions will be logged and suppressed. If false errors will be logged and then passed to the application.immediateFlush
- Underlying output stream will be flushed at the end of each append operation.properties
- optional propertiesmanager
- The OutputStreamManager.
-
-
Method Details
-
getImmediateFlush
public boolean getImmediateFlush()Gets the immediate flush setting.- Returns:
- immediate flush.
-
getManager
Gets the manager.- Returns:
- the manager.
-
start
public void start()Description copied from class:AbstractFilterable
Make the Filter available for use.- Specified by:
start
in interfaceLifeCycle
- Overrides:
start
in classAbstractFilterable
-
stop
Description copied from class:AbstractFilterable
Cleanup the Filter.- Specified by:
stop
in interfaceLifeCycle2
- Overrides:
stop
in classAbstractFilterable
- Parameters:
timeout
- the maximum time to waittimeUnit
- the time unit of the timeout argument- Returns:
- true if the receiver was stopped cleanly and normally, false otherwise.
-
stop
Description copied from class:AbstractFilterable
Cleanup the Filter.- Overrides:
stop
in classAbstractFilterable
-
append
Actual writing occurs here.Most subclasses of
AbstractOutputStreamAppender
will need to override this method.- Parameters:
event
- The LogEvent.
-
directEncodeEvent
-
writeByteArrayToManager
-
AbstractOutputStreamAppender(String, Layout, Filter, boolean, boolean, Property[], OutputStreamManager)