DailyRollingFileAppender extends FileAppender so that the underlying file is rolled over at a user chosen frequency. More...
Inherits log4cxx::rolling::RollingFileAppenderSkeleton.
Public Member Functions | |
DailyRollingFileAppender () | |
The default constructor simply calls its parents constructor. | |
DailyRollingFileAppender (const LayoutPtr &layout, const LogString &filename, const LogString &datePattern) | |
Instantiate a DailyRollingFileAppender and open the file designated by filename . | |
void | setDatePattern (const LogString &pattern) |
The DatePattern takes a string in the same format as expected by SimpleDateFormat. | |
LogString | getDatePattern () |
Returns the value of the DatePattern option. | |
void | setOption (const LogString &option, const LogString &value) |
Set option to value . | |
void | activateOptions (log4cxx::helpers::Pool &) |
Prepares DailyRollingFileAppender for use. |
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 |
---|---|---|
| Rollover at the beginning of each month | At midnight of May 31st, 2002 |
| 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 |
| Rollover at midnight each day. | At midnight, on March 8th, 2002, |
| Rollover at midnight and midday of each day. | At noon, on March 9th, 2002, |
| Rollover at the top of every hour. | At approximately 11:00.000 o'clock on March 9th, 2002, |
| Rollover at the beginning of every minute. | At approximately 11:23,000, on March 9th, 2001, |
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.
The default constructor simply calls its parents constructor.
DailyRollingFileAppender | ( | const LayoutPtr & | layout, | |
const LogString & | filename, | |||
const LogString & | datePattern | |||
) |
Instantiate a DailyRollingFileAppender and open the file designated by filename
.
The opened filename will become the ouput destination for this appender.
void activateOptions | ( | log4cxx::helpers::Pool & | ) | [virtual] |
Prepares DailyRollingFileAppender for use.
Reimplemented from RollingFileAppenderSkeleton.
LogString getDatePattern | ( | ) |
Returns the value of the DatePattern option.
void setDatePattern | ( | const LogString & | pattern | ) |
The DatePattern takes a string in the same format as expected by SimpleDateFormat.
This options determines the rollover schedule.
Set option
to value
.
The handling of each option depends on the OptionHandler instance. Some options may become active immediately whereas other may be activated only when activateOptions is called.
Reimplemented from FileAppender.