Log::Dispatch::Email — Base class for objects that send log messages via email
| Use Case | Command / Code | Description |
|---|---|---|
| 📦 Create a subclass | package My::Email; use base qw(Log::Dispatch::Email); sub send_email { ... } | Implement a custom email dispatcher by subclassing |
| 📧 Send a single message | $log->log(level => 'info', message => '...') | Send an email immediately (if buffered is false) |
| 📤 Flush buffered messages | $log->flush() | Send all queued messages at once |
| ⚙️ Set email subject | subject => 'My Subject' | Override default subject line |
| 👥 Set recipients | to => ['user@example.com', 'admin@example.com'] | Specify one or more email addresses |
version 2.70
package Log::Dispatch::Email::MySender;
use Log::Dispatch::Email;
use base qw( Log::Dispatch::Email );
sub send_email {
my $self = shift;
my %p = @_;
# Send email somehow. Message is in $p{message}
}
This module should be used as a base class to implement Log::Dispatch::* objects that send their log messages via email. Implementing a subclass simply requires the code shown in the SYNOPSIS with a real implementation of the send_email() method.
The constructor takes the following parameters in addition to the standard parameters documented in Log::Dispatch::Output:
$) — 📧 The subject of the email messages which are sent. Defaults to $0: log email$ or \@) — 👥 Either a string or a list reference of strings containing email addresses. Required.$) — 🏷️ A string containing an email address. This is optional and may not work with all mail sending methods.This class provides the following methods:
$email->send_email(%p)This is the method that must be subclassed. For now the only parameter in the hash is message.
$email->flushIf the object is buffered, then this method will call the send_email() method to send the contents of the buffer and then clear the buffer.
$email->DESTROYOn destruction, the object will call flush() to send any pending email.
Bugs may be submitted at https://github.com/houseabsolute/Log-Dispatch/issues.
I am also usually active on IRC as 'autarch' on irc://irc.perl.org.
The source code repository for Log-Dispatch can be found at https://github.com/houseabsolute/Log-Dispatch.
Dave Rolsky <autarch AT urth.org>
This software is Copyright (c) 2020 by Dave Rolsky.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)
The full text of the license can be found in the LICENSE file included with this distribution.
Generated by phpman v4.9.26-1-g511901d · Markdown · JSON · MCP Author: Che Dong Under GNU General Public License
2026-07-27 12:12 @216.73.216.194
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Enhanced by LLM: deepseek-v4-flash / taotoken.net / www.chedong.com - original format