Class RollingFileAppender
- 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<RollingFileManager>
-
- org.apache.logging.log4j.core.appender.RollingFileAppender
-
- All Implemented Interfaces:
Appender,Filterable,LocationAware,LifeCycle,LifeCycle2
@Plugin(name="RollingFile", category="Core", elementType="appender", printObject=true) public final class RollingFileAppender extends AbstractOutputStreamAppender<RollingFileManager>
An appender that writes to files and can roll over at intervals.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classRollingFileAppender.Builder<B extends RollingFileAppender.Builder<B>>Builds FileAppender instances.-
Nested classes/interfaces inherited from interface org.apache.logging.log4j.core.LifeCycle
LifeCycle.State
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.Objectadvertisementprivate Advertiseradvertiserprivate static intDEFAULT_BUFFER_SIZEprivate java.lang.StringfileNameprivate java.lang.StringfilePatternstatic java.lang.StringPLUGIN_NAME-
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 privateRollingFileAppender(java.lang.String name, Layout<? extends java.io.Serializable> layout, Filter filter, RollingFileManager manager, java.lang.String fileName, java.lang.String filePattern, boolean ignoreExceptions, boolean immediateFlush, Advertiser advertiser, Property[] properties)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidappend(LogEvent event)Writes the log entry rolling over the file when required.static <B extends RollingFileAppender.Builder<B>>
RollingFileAppendercreateAppender(java.lang.String fileName, java.lang.String filePattern, java.lang.String append, java.lang.String name, java.lang.String bufferedIO, java.lang.String bufferSizeStr, java.lang.String immediateFlush, TriggeringPolicy policy, RolloverStrategy strategy, Layout<? extends java.io.Serializable> layout, Filter filter, java.lang.String ignore, java.lang.String advertise, java.lang.String advertiseUri, Configuration config)Deprecated.UsenewBuilder().java.lang.StringgetFileName()Returns the File name for the Appender.java.lang.StringgetFilePattern()Returns the file pattern used when rolling over.<T extends TriggeringPolicy>
TgetTriggeringPolicy()Returns the triggering policy.static <B extends RollingFileAppender.Builder<B>>
BnewBuilder()Creates a new Builder.booleanstop(long timeout, java.util.concurrent.TimeUnit timeUnit)Cleanup the Filter.-
Methods inherited from class org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender
directEncodeEvent, getImmediateFlush, getManager, start, stop, writeByteArrayToManager
-
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
-
-
-
-
Field Detail
-
PLUGIN_NAME
public static final java.lang.String PLUGIN_NAME
- See Also:
- Constant Field Values
-
DEFAULT_BUFFER_SIZE
private static final int DEFAULT_BUFFER_SIZE
- See Also:
- Constant Field Values
-
fileName
private final java.lang.String fileName
-
filePattern
private final java.lang.String filePattern
-
advertisement
private java.lang.Object advertisement
-
advertiser
private final Advertiser advertiser
-
-
Constructor Detail
-
RollingFileAppender
private RollingFileAppender(java.lang.String name, Layout<? extends java.io.Serializable> layout, Filter filter, RollingFileManager manager, java.lang.String fileName, java.lang.String filePattern, boolean ignoreExceptions, boolean immediateFlush, Advertiser advertiser, Property[] properties)
-
-
Method Detail
-
stop
public boolean stop(long timeout, java.util.concurrent.TimeUnit timeUnit)Description copied from class:AbstractFilterableCleanup the Filter.- Specified by:
stopin interfaceLifeCycle2- Overrides:
stopin classAbstractOutputStreamAppender<RollingFileManager>- 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.
-
append
public void append(LogEvent event)
Writes the log entry rolling over the file when required.- Specified by:
appendin interfaceAppender- Overrides:
appendin classAbstractOutputStreamAppender<RollingFileManager>- Parameters:
event- The LogEvent.
-
getFileName
public java.lang.String getFileName()
Returns the File name for the Appender.- Returns:
- The file name.
-
getFilePattern
public java.lang.String getFilePattern()
Returns the file pattern used when rolling over.- Returns:
- The file pattern.
-
getTriggeringPolicy
public <T extends TriggeringPolicy> T getTriggeringPolicy()
Returns the triggering policy.- Type Parameters:
T- TriggeringPolicy type- Returns:
- The TriggeringPolicy
-
createAppender
@Deprecated public static <B extends RollingFileAppender.Builder<B>> RollingFileAppender createAppender(java.lang.String fileName, java.lang.String filePattern, java.lang.String append, java.lang.String name, java.lang.String bufferedIO, java.lang.String bufferSizeStr, java.lang.String immediateFlush, TriggeringPolicy policy, RolloverStrategy strategy, Layout<? extends java.io.Serializable> layout, Filter filter, java.lang.String ignore, java.lang.String advertise, java.lang.String advertiseUri, Configuration config)
Deprecated.UsenewBuilder().Creates a RollingFileAppender.- Parameters:
fileName- The name of the file that is actively written to. (required).filePattern- The pattern of the file name to use on rollover. (required).append- If true, events are appended to the file. If false, the file is overwritten when opened. Defaults to "true"name- The name of the Appender (required).bufferedIO- When true, I/O will be buffered. Defaults to "true".bufferSizeStr- buffer size for buffered IO (default is 8192).immediateFlush- When true, events are immediately flushed. Defaults to "true".policy- The triggering policy. (required).strategy- The rollover strategy. Defaults to DefaultRolloverStrategy.layout- The layout to use (defaults to the default PatternLayout).filter- The Filter or null.ignore- If"true"(default) exceptions encountered when appending events are logged; otherwise they are propagated to the caller.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.- Returns:
- A RollingFileAppender.
-
newBuilder
@PluginBuilderFactory public static <B extends RollingFileAppender.Builder<B>> B newBuilder()
Creates a new Builder.- Returns:
- a new Builder.
- Since:
- 2.7
-
-