@Plugin(name="MemoryMappedFile", category="Core", elementType="appender", printObject=true) public final class MemoryMappedFileAppender extends AbstractOutputStreamAppender<MemoryMappedFileManager>
| Modifier and Type | Class and Description |
|---|---|
static class |
MemoryMappedFileAppender.Builder<B extends MemoryMappedFileAppender.Builder<B>>
Builds RandomAccessFileAppender instances.
|
LifeCycle.State| Modifier and Type | Field and Description |
|---|---|
private java.lang.Object |
advertisement |
private Advertiser |
advertiser |
private static int |
BIT_POSITION_1GB |
private java.lang.String |
fileName |
private static int |
MAX_REGION_LENGTH |
private static int |
MIN_REGION_LENGTH |
DEFAULT_STOP_TIMEOUT, DEFAULT_STOP_TIMEUNIT, LOGGERELEMENT_TYPE| Modifier | Constructor and Description |
|---|---|
private |
MemoryMappedFileAppender(java.lang.String name,
Layout<? extends java.io.Serializable> layout,
Filter filter,
MemoryMappedFileManager manager,
java.lang.String filename,
boolean ignoreExceptions,
boolean immediateFlush,
Advertiser advertiser) |
| Modifier and Type | Method and Description |
|---|---|
void |
append(LogEvent event)
Write the log entry rolling over the file when required.
|
static <B extends MemoryMappedFileAppender.Builder<B>> |
createAppender(java.lang.String fileName,
java.lang.String append,
java.lang.String name,
java.lang.String immediateFlush,
java.lang.String regionLengthStr,
java.lang.String ignore,
Layout<? extends java.io.Serializable> layout,
Filter filter,
java.lang.String advertise,
java.lang.String advertiseURI,
Configuration config)
Deprecated.
Use
newBuilder(). |
private static int |
determineValidRegionLength(java.lang.String name,
int regionLength)
Converts the specified region length to a valid value.
|
java.lang.String |
getFileName()
Returns the file name this appender is associated with.
|
int |
getRegionLength()
Returns the length of the memory mapped region.
|
static <B extends MemoryMappedFileAppender.Builder<B>> |
newBuilder() |
boolean |
stop(long timeout,
java.util.concurrent.TimeUnit timeUnit)
Cleanup the Filter.
|
directEncodeEvent, getImmediateFlush, getManager, start, stop, writeByteArrayToManagererror, error, error, getHandler, getLayout, getName, ignoreExceptions, parseInt, setHandler, toStringaddFilter, getFilter, hasFilter, isFiltered, removeFilterequalsImpl, getState, getStatusLogger, hashCodeImpl, initialize, isInitialized, isStarted, isStarting, isStopped, isStopping, setStarted, setStarting, setState, setStopped, setStopping, stop, stopprivate static final int BIT_POSITION_1GB
private static final int MAX_REGION_LENGTH
private static final int MIN_REGION_LENGTH
private final java.lang.String fileName
private java.lang.Object advertisement
private final Advertiser advertiser
private MemoryMappedFileAppender(java.lang.String name,
Layout<? extends java.io.Serializable> layout,
Filter filter,
MemoryMappedFileManager manager,
java.lang.String filename,
boolean ignoreExceptions,
boolean immediateFlush,
Advertiser advertiser)
public boolean stop(long timeout,
java.util.concurrent.TimeUnit timeUnit)
AbstractFilterablestop in interface LifeCycle2stop in class AbstractOutputStreamAppender<MemoryMappedFileManager>timeout - the maximum time to waittimeUnit - the time unit of the timeout argumentpublic void append(LogEvent event)
append in interface Appenderappend in class AbstractOutputStreamAppender<MemoryMappedFileManager>event - The LogEvent.public java.lang.String getFileName()
public int getRegionLength()
@Deprecated public static <B extends MemoryMappedFileAppender.Builder<B>> MemoryMappedFileAppender createAppender(java.lang.String fileName, java.lang.String append, java.lang.String name, java.lang.String immediateFlush, java.lang.String regionLengthStr, java.lang.String ignore, Layout<? extends java.io.Serializable> layout, Filter filter, java.lang.String advertise, java.lang.String advertiseURI, Configuration config)
newBuilder().fileName - The name and path of the file.append - "True" if the file should be appended to, "false" if it should be overwritten. The default is
"true".name - The name of the Appender.immediateFlush - "true" if the contents should be flushed on every write, "false" otherwise. The default is
"false".regionLengthStr - The buffer size, defaults to .ignore - If "true" (default) exceptions encountered when appending events are logged; otherwise they
are propagated to the caller.layout - The layout to use to format the event. If no layout is provided the default PatternLayout will be
used.filter - The filter, if any, to use.advertise - "true" if the appender configuration should be advertised, "false" otherwise.advertiseURI - The advertised URI which can be used to retrieve the file contents.config - The Configuration.@PluginBuilderFactory public static <B extends MemoryMappedFileAppender.Builder<B>> B newBuilder()
private static int determineValidRegionLength(java.lang.String name,
int regionLength)