SYNOPSIS
package MyServer;
use Mojo::Base 'Mojolicious';
sub startup {
my ($self) = @_;
$self->plugin(MailException => {
from => '[email protected]',
to => '[email protected], [email protected]',
subject => 'My site crashed!',
headers => {
'X-MySite' => 'crashed'
}
});
}
DESCRIPTION
The plugin catches all exceptions, packs them into email and sends them to email.There are some plugin options:
- from
- From-address for email (default root@localhost)
- to
- To-address(es) for email (default webmaster@localhost)
- subject
- Subject for crash email
- headers
- Hash with headers that have to be added to mail
- send
-
Subroutine that can be used to send the mail, example:
sub startup { my ($self) = @_; $self->plugin(MailException => { send => sub { my ($mail, $exception) = @_; $mail->send; # prepared MIME::Lite object } }); }
In the function You can send email by yourself and (or) prepare and send Your own mail (sms, etc) message using $exception object. See Mojo::Exception.
The plugin provides additional method (helper) mail_exception.
$cx->mail_exception('my_error', { 'X-Add-Header' => 'value' });
You can use the helper to raise exception with additional mail headers.
VCS
The plugin is placed on github <https://github.com/dr-co/libmojolicious-plugin-mail_exception>.COPYRIGHT AND LICENCE
Copyright (C) 2012 by Dmitry E. Oboukhov <[email protected]> Copyright (C) 2012 by Roman V. Nikolaev <[email protected]>
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.