log4tango 4.0.3
Public Member Functions | Protected Member Functions | Protected Attributes
log4tango::FileAppender Class Reference

#include <FileAppender.hh>

Inheritance diagram for log4tango::FileAppender:
log4tango::LayoutAppender log4tango::Appender log4tango::RollingFileAppender

List of all members.

Public Member Functions

 FileAppender (const std::string &name, const std::string &fileName, bool append=true, mode_t mode=00644)
 Constructs a FileAppender.
 FileAppender (const std::string &name, int fd)
 Constructs a FileAppender to an already open file descriptor.
virtual ~FileAppender ()
 Destructor.
virtual bool reopen (void)
 Reopens the logfile.
virtual void close (void)
 Closes the logfile.
virtual bool is_valid (void) const
 Check if the appender is valid.
virtual void set_append (bool append)
 Sets the append vs truncate flag.
virtual bool get_append (void) const
 Gets the value of the 'append' option.
virtual void set_mode (mode_t mode)
 Sets the file open mode.
virtual mode_t get_mode () const
 Gets the file open mode.

Protected Member Functions

virtual int _append (const LoggingEvent &event)
 Log in Appender specific way.

Protected Attributes

const std::string _file_name
int _fd
int _flags
mode_t _mode

Constructor & Destructor Documentation

log4tango::FileAppender::FileAppender ( const std::string &  name,
const std::string &  fileName,
bool  append = true,
mode_t  mode = 00644 
)

Constructs a FileAppender.

Parameters:
namethe name of the Appender.
fileNamethe name of the file to which the Appender has to log.
appendwhether the Appender has to truncate the file or just append to it if it already exists. Defaults to 'true'.
modefile mode to open the logfile with. Defaults to 00644.
log4tango::FileAppender::FileAppender ( const std::string &  name,
int  fd 
)

Constructs a FileAppender to an already open file descriptor.

Parameters:
namethe name of the Appender.
fdthe file descriptor to which the Appender has to log.
log4tango::FileAppender::~FileAppender ( ) [virtual]

Destructor.


Member Function Documentation

int log4tango::FileAppender::_append ( const LoggingEvent event) [protected, virtual]

Log in Appender specific way.

Subclasses of Appender should implement this method to perform actual logging.

Parameters:
eventThe LoggingEvent to log.

Implements log4tango::Appender.

Reimplemented in log4tango::RollingFileAppender.

void log4tango::FileAppender::close ( void  ) [virtual]

Closes the logfile.

Implements log4tango::Appender.

bool log4tango::FileAppender::get_append ( void  ) const [virtual]

Gets the value of the 'append' option.

mode_t log4tango::FileAppender::get_mode ( void  ) const [virtual]

Gets the file open mode.

bool log4tango::FileAppender::is_valid ( void  ) const [virtual]

Check if the appender is valid.

Returns:
true if the appender is valid, false otherwise.

Reimplemented from log4tango::Appender.

bool log4tango::FileAppender::reopen ( void  ) [virtual]

Reopens the logfile.

This can be useful for logfiles that are rotated externally, e.g. by logrotate. This method is a NOOP for FileAppenders that have been constructed with a file descriptor.

Returns:
true if the reopen succeeded.

Reimplemented from log4tango::Appender.

void log4tango::FileAppender::set_append ( bool  append) [virtual]

Sets the append vs truncate flag.

NB. currently the FileAppender opens the logfile in the constructor. Therefore this method is too late to influence the first file opening. We'll need something similar to log4j's activateOptions().

Parameters:
appendfalse to truncate, true to append
void log4tango::FileAppender::set_mode ( mode_t  mode) [virtual]

Sets the file open mode.


Member Data Documentation

const std::string log4tango::FileAppender::_file_name [protected]
mode_t log4tango::FileAppender::_mode [protected]

The documentation for this class was generated from the following files: