public class ArchivingFileHandler extends AbstractStreamHandler
Initially, the "current log file" is created (or, if it already exists and the "append" option is true,
opened in "append" mode), and log records are written to it. When it is time to "archive" the current log file,
then it is closed, renamed and re-created.
| Modifier and Type | Field and Description |
|---|---|
static boolean |
DEFAULT_APPEND |
static java.lang.String |
DEFAULT_PATTERN |
static long |
DEFAULT_SIZE_LIMIT |
static TimeTable |
DEFAULT_TIME_TABLE |
static long |
NO_LIMIT
A special value for the
sizeLimit paramter of ArchivingFileHandler(String,
long, TimeTable, boolean, boolean, Level, Filter, Formatter, String) indicating that no limit should apply. |
DEFAULT_AUTO_FLUSH, DEFAULT_ENCODING, DEFAULT_FILTER, DEFAULT_FORMATTER, DEFAULT_LEVEL| Modifier | Constructor and Description |
|---|---|
|
ArchivingFileHandler()
The zero-parameter constructor (which is used by the
LogManager). |
protected |
ArchivingFileHandler(int dummy,
java.lang.String propertyNamePrefix)
Single-arg constructor to be used by proxies.
|
|
ArchivingFileHandler(java.lang.String pattern)
Equivalent with
ArchivingFileHandler(pattern,
DEFAULT_SIZE_LIMIT,
DEFAULT_TIME_TABLE,
false,
true,
AbstractStreamHandler.DEFAULT_LEVEL,
AbstractStreamHandler.DEFAULT_FILTER,
AbstractStreamHandler.DEFAULT_FORMATTER,
AbstractStreamHandler.DEFAULT_ENCODING). |
|
ArchivingFileHandler(java.lang.String pattern,
boolean append)
Equivalent with
ArchivingFileHandler(pattern,
9223372036854775807L,
DEFAULT_TIME_TABLE,
append,
true,
AbstractStreamHandler.DEFAULT_LEVEL,
AbstractStreamHandler.DEFAULT_FILTER,
AbstractStreamHandler.DEFAULT_FORMATTER,
AbstractStreamHandler.DEFAULT_ENCODING). |
|
ArchivingFileHandler(java.lang.String pattern,
long sizeLimit)
Equivalent with
ArchivingFileHandler(pattern,
sizeLimit,
DEFAULT_TIME_TABLE,
false,
true,
AbstractStreamHandler.DEFAULT_LEVEL,
AbstractStreamHandler.DEFAULT_FILTER,
AbstractStreamHandler.DEFAULT_FORMATTER,
AbstractStreamHandler.DEFAULT_ENCODING). |
|
ArchivingFileHandler(java.lang.String pattern,
long sizeLimit,
boolean append)
Equivalent with
ArchivingFileHandler(pattern,
sizeLimit,
DEFAULT_TIME_TABLE,
append,
true,
AbstractStreamHandler.DEFAULT_LEVEL,
AbstractStreamHandler.DEFAULT_FILTER,
AbstractStreamHandler.DEFAULT_FORMATTER,
AbstractStreamHandler.DEFAULT_ENCODING). |
|
ArchivingFileHandler(java.lang.String pattern,
long sizeLimit,
TimeTable timeTable,
boolean append,
boolean autoFlush,
java.util.logging.Level level,
java.util.logging.Filter filter,
java.util.logging.Formatter formatter,
java.lang.String encoding)
The pattern parameter determines the pathes of the log files, relative to the "user directory" (on
most systems: the "current working directory"), with the following placeholder replacements:
%%
A literal "%"
%h
The "user home directory" (as determined by the "user.home" system property)
%t
The "default temp file path" (as determined by the "java.io.tmpdir" system property)
%d
The date and time of the archiving, in the DateFormat _yyyy-MM-dd_HH-mm-ss. |
|
ArchivingFileHandler(java.lang.String pattern,
TimeTable timeTable)
Equivalent with
ArchivingFileHandler(pattern,
9223372036854775807L,
timeTable,
false,
true,
AbstractStreamHandler.DEFAULT_LEVEL,
AbstractStreamHandler.DEFAULT_FILTER,
AbstractStreamHandler.DEFAULT_FORMATTER,
AbstractStreamHandler.DEFAULT_ENCODING). |
|
ArchivingFileHandler(java.lang.String pattern,
TimeTable timeTable,
boolean append)
Equivalent with
ArchivingFileHandler(pattern,
9223372036854775807L,
timeTable,
append,
true,
AbstractStreamHandler.DEFAULT_LEVEL,
AbstractStreamHandler.DEFAULT_FILTER,
AbstractStreamHandler.DEFAULT_FORMATTER,
AbstractStreamHandler.DEFAULT_ENCODING). |
| Modifier and Type | Method and Description |
|---|---|
void |
publish(java.util.logging.LogRecord record) |
close, flush, isLoggable, setEncoding, setOutputStreampublic static final long NO_LIMIT
sizeLimit paramter of ArchivingFileHandler(String,
long, TimeTable, boolean, boolean, Level, Filter, Formatter, String) indicating that no limit should apply.public static final java.lang.String DEFAULT_PATTERN
public static final long DEFAULT_SIZE_LIMIT
public static final TimeTable DEFAULT_TIME_TABLE
public static final boolean DEFAULT_APPEND
public ArchivingFileHandler()
throws ParseException,
EvaluationException,
java.io.IOException
LogManager).
The ArchivingFileHandler, like all java.util.logging handlers, initializes itself with a set of
"logging properties" which it retrieves through the LogManager, which normally reads them from the
"logging.properties" file:
.patternpattern parameter of ArchivingFileHandler(String, long, TimeTable, boolean, boolean, Level, Filter, Formatter, String).
Defaults to "%h/java%d.log".
.sizeLimit.timeTableTimeTable for log file archiving with this syntax.
Defaults to "never".
de.unkrig.commons.util.TimeTable.parse("*:0")" for "every full hour".
.appendfalse.
ParseExceptionEvaluationExceptionjava.io.IOExceptionprotected ArchivingFileHandler(int dummy,
@Nullable
java.lang.String propertyNamePrefix)
throws ParseException,
EvaluationException,
java.io.IOException
ArchivingFileHandler().dummy - Only there to distinguish this constructor from ArchivingFileHandler(String)propertyNamePrefix - The property name prefix, or null to use the qualified name of the
actual handler classParseExceptionEvaluationExceptionjava.io.IOExceptionpublic ArchivingFileHandler(java.lang.String pattern)
throws java.io.IOException
ArchivingFileHandler(pattern,
DEFAULT_SIZE_LIMIT,
DEFAULT_TIME_TABLE,
false,
true,
AbstractStreamHandler.DEFAULT_LEVEL,
AbstractStreamHandler.DEFAULT_FILTER,
AbstractStreamHandler.DEFAULT_FORMATTER,
AbstractStreamHandler.DEFAULT_ENCODING).java.io.IOExceptionpublic ArchivingFileHandler(java.lang.String pattern,
boolean append)
throws java.io.IOException
ArchivingFileHandler(pattern,
9223372036854775807L,
DEFAULT_TIME_TABLE,
append,
true,
AbstractStreamHandler.DEFAULT_LEVEL,
AbstractStreamHandler.DEFAULT_FILTER,
AbstractStreamHandler.DEFAULT_FORMATTER,
AbstractStreamHandler.DEFAULT_ENCODING).java.io.IOExceptionpublic ArchivingFileHandler(java.lang.String pattern,
long sizeLimit)
throws java.io.IOException
ArchivingFileHandler(pattern,
sizeLimit,
DEFAULT_TIME_TABLE,
false,
true,
AbstractStreamHandler.DEFAULT_LEVEL,
AbstractStreamHandler.DEFAULT_FILTER,
AbstractStreamHandler.DEFAULT_FORMATTER,
AbstractStreamHandler.DEFAULT_ENCODING).java.io.IOExceptionpublic ArchivingFileHandler(java.lang.String pattern,
long sizeLimit,
boolean append)
throws java.io.IOException
ArchivingFileHandler(pattern,
sizeLimit,
DEFAULT_TIME_TABLE,
append,
true,
AbstractStreamHandler.DEFAULT_LEVEL,
AbstractStreamHandler.DEFAULT_FILTER,
AbstractStreamHandler.DEFAULT_FORMATTER,
AbstractStreamHandler.DEFAULT_ENCODING).java.io.IOExceptionpublic ArchivingFileHandler(java.lang.String pattern,
TimeTable timeTable)
throws java.io.IOException
ArchivingFileHandler(pattern,
9223372036854775807L,
timeTable,
false,
true,
AbstractStreamHandler.DEFAULT_LEVEL,
AbstractStreamHandler.DEFAULT_FILTER,
AbstractStreamHandler.DEFAULT_FORMATTER,
AbstractStreamHandler.DEFAULT_ENCODING).java.io.IOExceptionpublic ArchivingFileHandler(java.lang.String pattern,
TimeTable timeTable,
boolean append)
throws java.io.IOException
ArchivingFileHandler(pattern,
9223372036854775807L,
timeTable,
append,
true,
AbstractStreamHandler.DEFAULT_LEVEL,
AbstractStreamHandler.DEFAULT_FILTER,
AbstractStreamHandler.DEFAULT_FORMATTER,
AbstractStreamHandler.DEFAULT_ENCODING).java.io.IOExceptionpublic ArchivingFileHandler(java.lang.String pattern,
long sizeLimit,
TimeTable timeTable,
boolean append,
boolean autoFlush,
java.util.logging.Level level,
java.util.logging.Filter filter,
java.util.logging.Formatter formatter,
java.lang.String encoding)
throws java.io.IOException
%%"%"%huser.home" system property)%tjava.io.tmpdir" system property)%dDateFormat _yyyy-MM-dd_HH-mm-ss. For the
"current log file", "%d" is replaced with the empty string.
%d" placeholder, then "%d" is silently appended to the
pattern.
pattern - See the method descriptionsizeLimit - The size limit for the current filetimeTable - The time table for time-based archivingappend - Whether to append to the current log file (if it initially exists)autoFlush - See StreamHandler.StreamHandler(OutputStream, boolean, Level, Filter, Formatter, String)level - See StreamHandler.StreamHandler(OutputStream, boolean, Level, Filter, Formatter, String)filter - See StreamHandler.StreamHandler(OutputStream, boolean, Level, Filter, Formatter, String)formatter - See StreamHandler.StreamHandler(OutputStream, boolean, Level, Filter, Formatter, String)encoding - See StreamHandler.StreamHandler(OutputStream, boolean, Level, Filter, Formatter, String)java.io.IOExceptionpublic void publish(java.util.logging.LogRecord record)
publish in class AbstractStreamHandler