log4shib 2.0.0

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

`#include <FileAppender.hh>`

Inheritance diagram for log4shib::FileAppender:
[legend]
Collaboration diagram for log4shib::FileAppender:
[legend]

## 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 ()
virtual bool | reopen ()
| Reopens the logfile. More...
virtual void | close ()
| Closes the logfile. More...
virtual void | setAppend (bool append)
| Sets the append vs truncate flag. More...
virtual bool | getAppend () const
| Gets the value of the 'append' option. More...
virtual void | setMode (mode_t mode)
| Sets the file open mode. More...
virtual mode_t | getMode () const
| Gets the file open mode. More...
Public Member Functions inherited from log4shib::LayoutAppender
| LayoutAppender (const std::string &name)
virtual | ~LayoutAppender ()
virtual bool | requiresLayout () const
| Check if the appender requires a layout. More...
virtual void | setLayout (Layout *layout=NULL)
| Set the Layout for this appender. More...
Public Member Functions inherited from log4shib::AppenderSkeleton
virtual | ~AppenderSkeleton ()
| Destructor for AppenderSkeleton. More...
virtual void | doAppend (const LoggingEvent &event)
| Log in Appender specific way. More...
virtual bool | reopen ()
| Reopens the output destination of this Appender, e.g. More...
virtual void | close ()=0
| Release any resources allocated within the appender such as file handles, network connections, etc. More...
virtual bool | requiresLayout () const =0
| Check if the appender uses a layout. More...
virtual void | setLayout (Layout *layout)=0
| Set the Layout for this appender. More...
virtual void | setThreshold (Priority::Value priority)
| Set the threshold priority of this Appender. More...
virtual Priority::Value | getThreshold ()
| Get the threshold priority of this Appender. More...
virtual void | setFilter (Filter *filter)
| Set a Filter for this appender. More...
virtual Filter * | getFilter ()
| Get the Filter for this appender. More...
Public Member Functions inherited from log4shib::Appender
virtual | ~Appender ()
| Destructor for Appender. More...
virtual void | doAppend (const LoggingEvent &event)=0
| Log in Appender specific way. More...
virtual bool | reopen ()=0
| Reopens the output destination of this Appender, e.g. More...
virtual void | close ()=0
| Release any resources allocated within the appender such as file handles, network connections, etc. More...
virtual bool | requiresLayout () const =0
| Check if the appender uses a layout. More...
virtual void | setLayout (Layout *layout)=0
| Set the Layout for this appender. More...
const std::string & | getName () const
| Get the name of this appender. More...
virtual void | setThreshold (Priority::Value priority)=0
| Set the threshold priority of this Appender. More...
virtual Priority::Value | getThreshold ()=0
| Get the threshold priority of this Appender. More...
virtual void | setFilter (Filter *filter)=0
| Set a Filter for this appender. More...
virtual Filter * | getFilter ()=0
| Get the Filter for this appender. More...

## Protected Member Functions
virtual void | _append (const LoggingEvent &event)
| Log in Appender specific way. More...
Protected Member Functions inherited from log4shib::LayoutAppender
Layout & | _getLayout ()
| Return the layout of the appender. More...
Protected Member Functions inherited from log4shib::AppenderSkeleton
| AppenderSkeleton (const std::string &name)
| Constructor for AppenderSkeleton. More...
virtual void | _append (const LoggingEvent &event)=0
| Log in Appender specific way. More...
Protected Member Functions inherited from log4shib::Appender
| Appender (const std::string &name)
| Constructor for Appender. More...

## Protected Attributes
const std::string | _fileName
int | _fd
int | _flags
mode_t | _mode

## Additional Inherited Members
Public Types inherited from log4shib::LayoutAppender
typedef BasicLayout | DefaultLayoutType
Static Public Member Functions inherited from log4shib::Appender
static Appender * | getAppender (const std::string &name)
| Get a pointer to an exitsing Appender. More...
static bool | reopenAll ()
| Call reopen() on all existing Appenders. More...
static void | closeAll ()
| Call reopen() on all existing Appenders. More...

## Constructor & Destructor Documentation

## ◆ FileAppender() [1/2]

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

Constructs a FileAppender.

Parameters

  name | the name of the Appender.
  fileName | the name of the file to which the Appender has to log.
  append | whether the Appender has to truncate the file or just append to it if it already exists. Defaults to 'true'.
  mode | file mode to open the logfile with. Defaults to 00644.

## ◆ FileAppender() [2/2]

log4shib::FileAppender::FileAppender | ( | const std::string & | name,
|  | int | fd
| ) |  |

Constructs a FileAppender to an already open file descriptor.

Parameters

  name | the name of the Appender.
  fd | the file descriptor to which the Appender has to log.

## ◆ ~FileAppender()

log4shib::FileAppender::~FileAppender | ( |  | ) |
| virtual

## Member Function Documentation

## ◆ _append()

void log4shib::FileAppender::_append | ( | const LoggingEvent & | event | ) |
| protected virtual

Log in Appender specific way.

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

Parameters

  event | The LoggingEvent to log.

Implements log4shib::AppenderSkeleton.

Reimplemented in log4shib::RollingFileAppender.

## ◆ close()

void log4shib::FileAppender::close | ( |  | ) |
| virtual

Closes the logfile.

Implements log4shib::AppenderSkeleton.

## ◆ getAppend()

bool log4shib::FileAppender::getAppend | ( |  | ) | const
| virtual

Gets the value of the 'append' option.

## ◆ getMode()

mode_t log4shib::FileAppender::getMode | ( |  | ) | const
| virtual

Gets the file open mode.

## ◆ reopen()

bool log4shib::FileAppender::reopen | ( |  | ) |
| 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 log4shib::AppenderSkeleton.

## ◆ setAppend()

void log4shib::FileAppender::setAppend | ( | 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

  append | false to truncate, true to append

## ◆ setMode()

void log4shib::FileAppender::setMode | ( | mode_t | mode | ) |
| virtual

Sets the file open mode.

## Member Data Documentation

## ◆ _fd

int log4shib::FileAppender::_fd
| protected

## ◆ _fileName

const std::string log4shib::FileAppender::_fileName
| protected

## ◆ _flags

int log4shib::FileAppender::_flags
| protected

## ◆ _mode

mode_t log4shib::FileAppender::_mode
| protected

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

- FileAppender.hh
- FileAppender.cpp