|
Log4j 1.2.14 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
org.apache.log4j Class DailyRollingFileAppender
java.lang.Object | +--org.apache.log4j.AppenderSkeleton | +--org.apache.log4j.WriterAppender | +--org.apache.log4j.FileAppender | +--org.apache.log4j.DailyRollingFileAppender
- All Implemented Interfaces:
- Appender, OptionHandler
- public class DailyRollingFileAppender
- extends FileAppender
DailyRollingFileAppender extends FileAppender
so that the
underlying file is rolled over at a user chosen frequency.
The rolling schedule is specified by the DatePattern
option. This pattern should follow the SimpleDateFormat
conventions. In particular, you must escape literal text
within a pair of single quotes. A formatted version of the date
pattern is used as the suffix for the rolled file name.
For example, if the File option is set to
/foo/bar.log
and the DatePattern set to
'.'yyyy-MM-dd
, on 2001-02-16 at midnight, the logging
file /foo/bar.log
will be copied to
/foo/bar.log.2001-02-16
and logging for 2001-02-17
will continue in /foo/bar.log
until it rolls over
the next day.
Is is possible to specify monthly, weekly, half-daily, daily, hourly, or minutely rollover schedules.
DatePattern | Rollover schedule | Example |
---|---|---|
'.'yyyy-MM
| Rollover at the beginning of each month | At midnight of May 31st, 2002 /foo/bar.log will be
copied to /foo/bar.log.2002-05 . Logging for the month
of June will be output to /foo/bar.log until it is
also rolled over the next month.
|
'.'yyyy-ww
| Rollover at the first day of each week. The first day of the week depends on the locale. | Assuming the first day of the week is Sunday, on Saturday
midnight, June 9th 2002, the file /foo/bar.log will be
copied to /foo/bar.log.2002-23. Logging for the 24th week
of 2002 will be output to /foo/bar.log until it is
rolled over the next week.
|
'.'yyyy-MM-dd
| Rollover at midnight each day. | At midnight, on March 8th, 2002, /foo/bar.log will
be copied to /foo/bar.log.2002-03-08 . Logging for the
9th day of March will be output to /foo/bar.log until
it is rolled over the next day.
|
'.'yyyy-MM-dd-a
| Rollover at midnight and midday of each day. | At noon, on March 9th, 2002, /foo/bar.log will be
copied to /foo/bar.log.2002-03-09-AM . Logging for the
afternoon of the 9th will be output to /foo/bar.log
until it is rolled over at midnight.
|
'.'yyyy-MM-dd-HH
| Rollover at the top of every hour. | At approximately 11:00.000 o'clock on March 9th, 2002,
/foo/bar.log will be copied to
/foo/bar.log.2002-03-09-10 . Logging for the 11th hour
of the 9th of March will be output to /foo/bar.log
until it is rolled over at the beginning of the next hour.
|
'.'yyyy-MM-dd-HH-mm
| Rollover at the beginning of every minute. | At approximately 11:23,000, on March 9th, 2001,
/foo/bar.log will be copied to
/foo/bar.log.2001-03-09-10-22 . Logging for the minute
of 11:23 (9th of March) will be output to
/foo/bar.log until it is rolled over the next minute.
|
Do not use the colon ":" character in anywhere in the DatePattern option. The text before the colon is interpeted as the protocol specificaion of a URL which is probably not what you want.
- Author:
- Eirik Lygre, Ceki Gülcü
Fields inherited from class org.apache.log4j.FileAppender |
bufferedIO, bufferSize, fileAppend, fileName |
Fields inherited from class org.apache.log4j.WriterAppender |
encoding, immediateFlush, qw |
Fields inherited from class org.apache.log4j.AppenderSkeleton |
closed, errorHandler, headFilter, layout, name, tailFilter, threshold |
Constructor Summary | |
DailyRollingFileAppender()
The default constructor does nothing. |
|
DailyRollingFileAppender(Layout layout,
String filename,
String datePattern)
Instantiate a DailyRollingFileAppender and open the
file designated by filename . |
Method Summary | |
void |
activateOptions()
If the value of File is not null , then FileAppender.setFile(java.lang.String) is called with the values of File and
Append properties. |
String |
getDatePattern()
Returns the value of the DatePattern option. |
void |
setDatePattern(String pattern)
The DatePattern takes a string in the same format as expected by SimpleDateFormat . |
protected void |
subAppend(LoggingEvent event)
This method differentiates DailyRollingFileAppender from its super class. |
Methods inherited from class org.apache.log4j.FileAppender |
closeFile, getAppend, getBufferedIO, getBufferSize, getFile, reset, setAppend, setBufferedIO, setBufferSize, setFile, setFile, setQWForFiles |
Methods inherited from class org.apache.log4j.WriterAppender |
append, checkEntryConditions, close, closeWriter, createWriter, getEncoding, getImmediateFlush, requiresLayout, setEncoding, setErrorHandler, setImmediateFlush, setWriter, writeFooter, writeHeader |
Methods inherited from class org.apache.log4j.AppenderSkeleton |
addFilter, clearFilters, doAppend, finalize, getErrorHandler, getFilter, getFirstFilter, getLayout, getName, getThreshold, isAsSevereAsThreshold, setLayout, setName, setThreshold |
Methods inherited from class java.lang.Object |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
DailyRollingFileAppender
public DailyRollingFileAppender()
- The default constructor does nothing.
DailyRollingFileAppender
public DailyRollingFileAppender(Layout layout, String filename, String datePattern) throws IOException
- Instantiate a
DailyRollingFileAppender
and open the file designated byfilename
. The opened filename will become the ouput destination for this appender.
Method Detail |
setDatePattern
public void setDatePattern(String pattern)
- The DatePattern takes a string in the same format as
expected by
SimpleDateFormat
. This options determines the rollover schedule.
getDatePattern
public String getDatePattern()
- Returns the value of the DatePattern option.
activateOptions
public void activateOptions()
- Description copied from class:
FileAppender
- If the value of File is not
null
, thenFileAppender.setFile(java.lang.String)
is called with the values of File and Append properties. - Overrides:
activateOptions
in classFileAppender
subAppend
protected void subAppend(LoggingEvent event)
- This method differentiates DailyRollingFileAppender from its
super class.
Before actually logging, this method will check whether it is time to do a rollover. If it is, it will schedule the next rollover time and then rollover.
- Overrides:
subAppend
in classWriterAppender
|
Log4j 1.2.14 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 2000-2005 Apache Software Foundation.