@Plugin(name="SMTP", category="Core", elementType="appender", printObject=true) public final class SmtpAppender extends AbstractAppender
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.
By default, an email message will formatted as HTML. This can be modified by
setting a layout for the appender.
By default, an email message will be sent when an ERROR or higher severity
message is appended. This can be modified by setting a filter for the
appender.
AbstractAppender.Builder<B extends AbstractAppender.Builder<B>>
LifeCycle.State
Modifier and Type | Field and Description |
---|---|
private static int |
DEFAULT_BUFFER_SIZE |
private SmtpManager |
manager
The SMTP Manager
|
DEFAULT_STOP_TIMEOUT, DEFAULT_STOP_TIMEUNIT, LOGGER
ELEMENT_TYPE
Modifier | Constructor and Description |
---|---|
private |
SmtpAppender(java.lang.String name,
Filter filter,
Layout<? extends java.io.Serializable> layout,
SmtpManager manager,
boolean ignoreExceptions,
Property[] properties) |
Modifier and Type | Method and Description |
---|---|
void |
append(LogEvent event)
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.
|
static SmtpAppender |
createAppender(Configuration config,
java.lang.String name,
java.lang.String to,
java.lang.String cc,
java.lang.String bcc,
java.lang.String from,
java.lang.String replyTo,
java.lang.String subject,
java.lang.String smtpProtocol,
java.lang.String smtpHost,
java.lang.String smtpPortStr,
java.lang.String smtpUsername,
java.lang.String smtpPassword,
java.lang.String smtpDebug,
java.lang.String bufferSizeStr,
Layout<? extends java.io.Serializable> layout,
Filter filter,
java.lang.String ignore)
Create a SmtpAppender.
|
boolean |
isFiltered(LogEvent event)
Capture all events in CyclicBuffer.
|
error, error, error, getHandler, getLayout, getName, ignoreExceptions, parseInt, requiresLocation, setHandler, toSerializable, toString
addFilter, getFilter, getPropertyArray, hasFilter, removeFilter, start, stop, stop
equalsImpl, getState, getStatusLogger, hashCodeImpl, initialize, isInitialized, isStarted, isStarting, isStopped, isStopping, setStarted, setStarting, setState, setStopped, setStopping, stop, stop
private static final int DEFAULT_BUFFER_SIZE
private final SmtpManager manager
private SmtpAppender(java.lang.String name, Filter filter, Layout<? extends java.io.Serializable> layout, SmtpManager manager, boolean ignoreExceptions, Property[] properties)
@PluginFactory public static SmtpAppender createAppender(@PluginConfiguration Configuration config, @PluginAttribute(value="name") @Required java.lang.String name, @PluginAttribute(value="to") java.lang.String to, @PluginAttribute(value="cc") java.lang.String cc, @PluginAttribute(value="bcc") java.lang.String bcc, @PluginAttribute(value="from") java.lang.String from, @PluginAttribute(value="replyTo") java.lang.String replyTo, @PluginAttribute(value="subject") java.lang.String subject, @PluginAttribute(value="smtpProtocol") java.lang.String smtpProtocol, @PluginAttribute(value="smtpHost") java.lang.String smtpHost, @PluginAttribute(value="smtpPort",defaultString="0") @ValidPort java.lang.String smtpPortStr, @PluginAttribute(value="smtpUsername") java.lang.String smtpUsername, @PluginAttribute(value="smtpPassword",sensitive=true) java.lang.String smtpPassword, @PluginAttribute(value="smtpDebug") java.lang.String smtpDebug, @PluginAttribute(value="bufferSize") java.lang.String bufferSizeStr, @PluginElement(value="Layout") Layout<? extends java.io.Serializable> layout, @PluginElement(value="Filter") Filter filter, @PluginAttribute(value="ignoreExceptions") java.lang.String ignore)
name
- The name of the Appender.to
- The comma-separated list of recipient email addresses.cc
- The comma-separated list of CC email addresses.bcc
- The comma-separated list of BCC email addresses.from
- The email address of the sender.replyTo
- The comma-separated list of reply-to email addresses.subject
- The subject of the email message.smtpProtocol
- The SMTP transport protocol (such as "smtps", defaults to "smtp").smtpHost
- The SMTP hostname to send to.smtpPortStr
- The SMTP port to send to.smtpUsername
- The username required to authenticate against the SMTP server.smtpPassword
- The password required to authenticate against the SMTP server.smtpDebug
- Enable mail session debuging on STDOUT.bufferSizeStr
- How many log events should be buffered for inclusion in the
message?layout
- The layout to use (defaults to HtmlLayout).filter
- The Filter or null (defaults to ThresholdFilter, level of
ERROR).ignore
- If "true"
(default) exceptions encountered when appending events are logged; otherwise
they are propagated to the caller.public boolean isFiltered(LogEvent event)
isFiltered
in interface Filterable
isFiltered
in class AbstractFilterable
event
- The Log event.public void append(LogEvent event)
event
- The Log event.