NAME
Log::Handler::Output::Sendmail - Log messages with sendmail.
SYNOPSIS
use Log::Handler::Output::Sendmail;
my $email = Log::Handler::Output::Sendmail->new(
from => 'bar@foo.example',
to => 'foo@bar.example',
subject => 'your subject',
);
$email->log(message => $message);
DESCRIPTION
With this output module it's possible to log messages via sendmail
.
METHODS
new()
Call new()
to create a new Log::Handler::Output::Sendmail object.
The following options are possible:
- from
-
The sender address (From).
- to
-
The receipient address (To).
- cc
-
Carbon Copy (Cc).
- bcc
-
Blind Carbon Copy (Bcc)
- subject
-
The subject of the mail.
- sender
-
This option is identical with
sendmail -f
. - header
-
With this options it's possible to set your own header.
my $email = Log::Handler::Output::Sendmail->new( from => 'bar@foo.example', to => 'foo@bar.example', header => 'Content-Type: text/plain; charset= UTF-8', );
Or
my $email = Log::Handler::Output::Sendmail->new( header => { From => 'bar@foo.example', To => 'foo@bar.example', Subject => 'my subject', 'Content-Type' => text/plain; charset= UTF-8', } );
Or
my $email = Log::Handler::Output::Sendmail->new( header => [ 'From: bar@foo.example', 'To: foo@bar.example', 'Subject: my subject', 'Content-Type: text/plain; charset= UTF-8', ] );
- sendmail
-
The default is set to
/usr/sbin/sendmail
. - params
-
Parameters for
sendmail
.The default is set to
-t
. - maxsize
-
Set the maximum size of the buffer in bytes.
All messages will be buffered and if
maxsize
is exceeded the buffer is flushed and the messages will be send as email.The default is set to 1048576 bytes.
Set 0 if you want no buffering and send a mail for each log message.
- debug
-
Set 1 if you want to enable debugging.
The messages can be fetched with $SIG{__WARN__}.
log()
Call log()
if you want to log a message as email.
$email->log(message => "this message will be mailed");
If you pass the level then its placed into the subject:
$email->log(message => "foo", level => "INFO");
$email->log(message => "bar", level => "ERROR");
$email->log(message => "baz", level => "DEBUG");
The lowest level is used:
Subject: ERROR ...
You can pass the level with Log::Handler
by setting
message_pattern => '%L'
flush()
Call flush()
if you want to flush the buffered messages.
validate()
Validate a configuration.
reload()
Reload with a new configuration.
errstr()
This function returns the last error message.
DESTROY
DESTROY
is defined and called flush()
.
PREREQUISITES
Carp
Params::Validate
EXPORTS
No exports.
REPORT BUGS
Please report all bugs to <jschulz.cpan(at)bloonix.de>.
If you send me a mail then add Log::Handler into the subject.
AUTHOR
Jonny Schulz <jschulz.cpan(at)bloonix.de>.
COPYRIGHT
Copyright (C) 2007-2009 by Jonny Schulz. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.