log4tango  5.0.1
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
log4tango::FileAppender Class Reference

#include <FileAppender.hh>

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

Public Member Functions

 FileAppender (const std::string &name, const std::string &fileName, bool append=true, mode_t mode=00644)
 Constructs a FileAppender. More...
 
 FileAppender (const std::string &name, int fd)
 Constructs a FileAppender to an already open file descriptor. More...
 
virtual ~FileAppender ()
 Destructor. More...
 
virtual bool reopen (void)
 Reopens the logfile. More...
 
virtual void close (void)
 Closes the logfile. More...
 
virtual bool is_valid (void) const
 Check if the appender is valid. More...
 
virtual void set_append (bool append)
 Sets the append vs truncate flag. More...
 
virtual bool get_append (void) const
 Gets the value of the 'append' option. More...
 
virtual void set_mode (mode_t mode)
 Sets the file open mode. More...
 
virtual mode_t get_mode () const
 Gets the file open mode. More...
 
- Public Member Functions inherited from log4tango::LayoutAppender
 LayoutAppender (const std::string &name)
 
virtual ~LayoutAppender ()
 
virtual bool requires_layout () const
 Check if the appender uses a layout. More...
 
virtual void set_layout (Layout *layout=0)
 Change the layout. More...
 
- Public Member Functions inherited from log4tango::Appender
virtual ~Appender ()
 Destructor for Appender. More...
 
int append (const LoggingEvent &event)
 Log in Appender specific way. More...
 
const std::string & get_name (void) const
 Returns this appender name. More...
 

Protected Member Functions

virtual int _append (const LoggingEvent &event)
 Log in Appender specific way. More...
 
- Protected Member Functions inherited from log4tango::LayoutAppender
Layoutget_layout ()
 
- Protected Member Functions inherited from log4tango::Appender
 Appender (const std::string &name)
 Constructor for Appender. More...
 
virtual void level_changed (Level::Value new_level)
 Inform an appender that its Logger's logging level has changed. More...
 

Protected Attributes

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

Additional Inherited Members

- Public Types inherited from log4tango::LayoutAppender
typedef Layout DefaultLayoutType
 

Constructor & Destructor Documentation

◆ FileAppender() [1/2]

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.

◆ FileAppender() [2/2]

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.

◆ ~FileAppender()

log4tango::FileAppender::~FileAppender ( )
virtual

Destructor.

Member Function Documentation

◆ _append()

int log4tango::FileAppender::_append ( const LoggingEvent event)
protectedvirtual

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.

◆ close()

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

Closes the logfile.

Implements log4tango::Appender.

◆ get_append()

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

Gets the value of the 'append' option.

◆ get_mode()

mode_t log4tango::FileAppender::get_mode ( ) const
virtual

Gets the file open mode.

◆ is_valid()

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.

◆ reopen()

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.

◆ set_append()

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

◆ set_mode()

void log4tango::FileAppender::set_mode ( mode_t  mode)
virtual

Sets the file open mode.

Member Data Documentation

◆ _fd

int log4tango::FileAppender::_fd
protected

◆ _file_name

const std::string log4tango::FileAppender::_file_name
protected

◆ _flags

int log4tango::FileAppender::_flags
protected

◆ _mode

mode_t log4tango::FileAppender::_mode
protected

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