SMTPAppender Class Reference

Send an e-mail when a specific logging event occurs, typically on errors or fatal errors. More...

Inheritance diagram for SMTPAppender:

## Public Member Functions

| SMTPAppender ()
| SMTPAppender (log4cxx::helpers::Pool &p)
| The default constructor will instantiate the appender with a spi::TriggeringEventEvaluator that will trigger on events with level ERROR or higher. More...
| SMTPAppender (spi::TriggeringEventEvaluatorPtr evaluator)
| Use `evaluator` passed as parameter as the spi::TriggeringEventEvaluator for this net::SMTPAppender. More...
| ~SMTPAppender ()
virtual void | setOption (const LogString &option, const LogString &value)
| Set options. More...
virtual void | activateOptions (log4cxx::helpers::Pool &p)
| Activate the specified options, such as the smtp host, the recipient, from, etc. More...
virtual void | append (const spi::LoggingEventPtr &event, log4cxx::helpers::Pool &p)
| Perform SMTPAppender specific appending actions, mainly adding the event to a cyclic buffer and checking if the event triggers an e-mail to be sent. More...
virtual void | close ()
| Release any resources allocated within the appender such as file handles, network connections, etc. More...
LogString | getTo () const
| Returns value of the To option. More...
LogString | getCc () const
| Returns value of the cc option. More...
LogString | getBcc () const
| Returns value of the bcc option. More...
virtual bool | requiresLayout () const
| The `SMTPAppender` requires a layout. More...
void | sendBuffer (log4cxx::helpers::Pool &p)
| Send the contents of the cyclic buffer as an e-mail message. More...
LogString | getEvaluatorClass ()
| Returns value of the EvaluatorClass option. More...
LogString | getFrom () const
| Returns value of the From option. More...
LogString | getSubject () const
| Returns value of the Subject option. More...
void | setFrom (const LogString &from)
| The From option takes a string value which should be a e-mail address of the sender. More...
void | setSubject (const LogString &subject)
| The Subject option takes a string value which should be a the subject of the e-mail message. More...
void | setBufferSize (int bufferSize)
| The BufferSize option takes a positive integer representing the maximum number of logging events to collect in a cyclic buffer. More...
void | setSMTPHost (const LogString &smtpHost)
| The SMTPHost option takes a string value which should be a the host name of the SMTP server that will send the e-mail message. More...
LogString | getSMTPHost () const
| Returns value of the SMTPHost option. More...
void | setSMTPPort (int port)
| The SMTPPort option takes a string value which should be a the port of the SMTP server that will send the e-mail message. More...
int | getSMTPPort () const
| Returns value of the SMTPHost option. More...
void | setTo (const LogString &to)
| The To option takes a string value which should be a comma separated list of e-mail address of the recipients. More...
void | setCc (const LogString &to)
| The Cc option takes a string value which should be a comma separated list of e-mail address of the cc'd recipients. More...
void | setBcc (const LogString &to)
| The Bcc option takes a string value which should be a comma separated list of e-mail address of the bcc'd recipients. More...
void | setSMTPUsername (const LogString &newVal)
| The SMTPUsername option takes a string value which should be a the user name for the SMTP server. More...
LogString | getSMTPUsername () const
| Returns value of the SMTPUsername option. More...
void | setSMTPPassword (const LogString &newVal)
| The SMTPPassword option takes a string value which should be a the password for the SMTP server. More...
LogString | getSMTPPassword () const
| Returns value of the SMTPPassword option. More...
int | getBufferSize () const
| Returns value of the BufferSize option. More...
log4cxx::spi::TriggeringEventEvaluatorPtr | getEvaluator () const
| Gets the current triggering evaluator. More...
void | setEvaluator (log4cxx::spi::TriggeringEventEvaluatorPtr &trigger)
| Sets the triggering evaluator. More...
void | setEvaluatorClass (const LogString &value)
| The EvaluatorClass option takes a string value representing the name of the class implementing the spi::TriggeringEventEvaluator interface. More...
void | setLocationInfo (bool locationInfo)
| The LocationInfo option is provided for compatibility with log4j and has no effect in log4cxx. More...
bool | getLocationInfo () const
| Returns value of the LocationInfo option. More...
Public Member Functions inherited from AppenderSkeleton
| AppenderSkeleton ()
| AppenderSkeleton (const LayoutPtr &layout)
void | addRef () const
void | releaseRef () const
void | finalize ()
| Finalize this appender by calling the derived class' `close` method. More...
void | addFilter (const spi::FilterPtr &newFilter)
| Add a filter to end of the filter list. More...
void | clearFilters ()
| Clear the filters chain. More...
const spi::ErrorHandlerPtr & | getErrorHandler () const
| Return the currently set spi::ErrorHandler for this Appender. More...
spi::FilterPtr | getFilter () const
| Returns the head Filter. More...
const spi::FilterPtr & | getFirstFilter () const
| Return the first filter in the filter chain for this Appender. More...
LayoutPtr | getLayout () const
| Returns the layout of this appender. More...
LogString | getName () const
| Returns the name of this Appender. More...
const LevelPtr & | getThreshold ()
| Returns this appenders threshold level. More...
bool | isAsSevereAsThreshold (const LevelPtr &level) const
| Check whether the message level is below the appender's threshold. More...
void | doAppend (const spi::LoggingEventPtr &event, log4cxx::helpers::Pool &pool)
| This method performs threshold checks and invokes filters before delegating actual logging to the subclasses specific AppenderSkeleton::append method. More...
void | setErrorHandler (const spi::ErrorHandlerPtr &eh)
| Set the ErrorHandler for this Appender. More...
void | setLayout (const LayoutPtr &layout1)
| Set the layout for this appender. More...
void | setName (const LogString &name1)
| Set the name of this Appender. More...
void | setThreshold (const LevelPtr &threshold)
| Set the threshold level. More...
Public Member Functions inherited from Appender
virtual | ~Appender ()
Public Member Functions inherited from OptionHandler
virtual | ~OptionHandler ()
Public Member Functions inherited from Object
virtual const helpers::Class & | getClass () const
virtual | ~Object ()
virtual bool | instanceof (const Class &clazz) const =0
virtual const void * | cast (const Class &clazz) const =0
Public Member Functions inherited from ObjectImpl
| ObjectImpl ()
virtual | ~ObjectImpl ()
void | addRef () const
void | releaseRef () const

## Additional Inherited Members

Static Public Member Functions inherited from Object
static const helpers::Class & | getStaticClass ()
static const log4cxx::helpers::ClassRegistration & | registerClass ()
Protected Attributes inherited from AppenderSkeleton
LayoutPtr | layout
| The layout variable does not need to be set if the appender implementation has its own layout. More...
LogString | name
| Appenders are named. More...
LevelPtr | threshold
| There is no level threshold filtering by default. More...
spi::ErrorHandlerPtr | errorHandler
| It is assumed and enforced that errorHandler is never null. More...
spi::FilterPtr | headFilter
| The first filter in the filter chain. More...
spi::FilterPtr | tailFilter
| The last filter in the filter chain. More...
bool | closed
| Is this appender closed? More...
log4cxx::helpers::Pool | pool
log4cxx::helpers::Mutex | mutex
Protected Attributes inherited from ObjectImpl
unsigned int volatile | ref

## Detailed Description

Send an e-mail when a specific logging event occurs, typically on errors or fatal errors.

The number of logging events delivered in this e-mail depend on the value of BufferSize option. The `SMTPAppender` keeps only the last `BufferSize` logging events in its cyclic buffer. This keeps memory requirements at a reasonable level while still delivering useful application context.

## Constructor & Destructor Documentation

SMTPAppender | ( |  | ) |

SMTPAppender | ( | log4cxx::helpers::Pool & | p | ) |

The default constructor will instantiate the appender with a spi::TriggeringEventEvaluator that will trigger on events with level ERROR or higher.

SMTPAppender | ( | spi::TriggeringEventEvaluatorPtr | evaluator | ) |

Use `evaluator` passed as parameter as the spi::TriggeringEventEvaluator for this net::SMTPAppender.

~SMTPAppender | ( |  | ) |

## Member Function Documentation

virtual void activateOptions | ( | log4cxx::helpers::Pool & | p | ) |

virtual

Activate the specified options, such as the smtp host, the recipient, from, etc.

Reimplemented from AppenderSkeleton.

virtual void append | ( | const spi::LoggingEventPtr & | event,
|  | log4cxx::helpers::Pool & | p
| ) |  |

virtual

Perform SMTPAppender specific appending actions, mainly adding the event to a cyclic buffer and checking if the event triggers an e-mail to be sent.

Implements AppenderSkeleton.

virtual void close | ( |  | ) |

virtual

Release any resources allocated within the appender such as file handles, network connections, etc.

It is a programming error to append to a closed appender.

Implements Appender.

LogString getBcc | ( |  | ) | const

Returns value of the bcc option.

int getBufferSize | ( |  | ) | const

inline

Returns value of the BufferSize option.

LogString getCc | ( |  | ) | const

Returns value of the cc option.

log4cxx::spi::TriggeringEventEvaluatorPtr getEvaluator | ( |  | ) | const

Gets the current triggering evaluator.

Returns
  triggering evaluator.

LogString getEvaluatorClass | ( |  | ) |

Returns value of the EvaluatorClass option.

LogString getFrom | ( |  | ) | const

Returns value of the From option.

bool getLocationInfo | ( |  | ) | const

Returns value of the LocationInfo option.

LogString getSMTPHost | ( |  | ) | const

Returns value of the SMTPHost option.

LogString getSMTPPassword | ( |  | ) | const

Returns value of the SMTPPassword option.

int getSMTPPort | ( |  | ) | const

Returns value of the SMTPHost option.

LogString getSMTPUsername | ( |  | ) | const

Returns value of the SMTPUsername option.

LogString getSubject | ( |  | ) | const

Returns value of the Subject option.

LogString getTo | ( |  | ) | const

Returns value of the To option.

virtual bool requiresLayout | ( |  | ) | const

virtual

The `SMTPAppender` requires a layout.

Implements Appender.

void sendBuffer | ( | log4cxx::helpers::Pool & | p | ) |

Send the contents of the cyclic buffer as an e-mail message.

void setBcc | ( | const LogString & | to | ) |

The Bcc option takes a string value which should be a comma separated list of e-mail address of the bcc'd recipients.

void setBufferSize | ( | int | bufferSize | ) |

The BufferSize option takes a positive integer representing the maximum number of logging events to collect in a cyclic buffer.

When the `BufferSize` is reached, oldest events are deleted as new events are added to the buffer. By default the size of the cyclic buffer is 512 events.

void setCc | ( | const LogString & | to | ) |

The Cc option takes a string value which should be a comma separated list of e-mail address of the cc'd recipients.

void setEvaluator | ( | log4cxx::spi::TriggeringEventEvaluatorPtr & | trigger | ) |

Sets the triggering evaluator.

Parameters

  trigger | triggering evaluator.

void setEvaluatorClass | ( | const LogString & | value | ) |

The EvaluatorClass option takes a string value representing the name of the class implementing the spi::TriggeringEventEvaluator interface.

A corresponding object will be instantiated and assigned as the triggering event evaluator for the SMTPAppender.

void setFrom | ( | const LogString & | from | ) |

The From option takes a string value which should be a e-mail address of the sender.

void setLocationInfo | ( | bool | locationInfo | ) |

The LocationInfo option is provided for compatibility with log4j and has no effect in log4cxx.

virtual void setOption | ( | const LogString & | option,
|  | const LogString & | value
| ) |  |

virtual

Set options.

Reimplemented from AppenderSkeleton.

void setSMTPHost | ( | const LogString & | smtpHost | ) |

The SMTPHost option takes a string value which should be a the host name of the SMTP server that will send the e-mail message.

void setSMTPPassword | ( | const LogString & | newVal | ) |

The SMTPPassword option takes a string value which should be a the password for the SMTP server.

void setSMTPPort | ( | int | port | ) |

The SMTPPort option takes a string value which should be a the port of the SMTP server that will send the e-mail message.

void setSMTPUsername | ( | const LogString & | newVal | ) |

The SMTPUsername option takes a string value which should be a the user name for the SMTP server.

void setSubject | ( | const LogString & | subject | ) |

The Subject option takes a string value which should be a the subject of the e-mail message.

void setTo | ( | const LogString & | to | ) |

The To option takes a string value which should be a comma separated list of e-mail address of the recipients.

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

- smtpappender.h