Dmitry E. Oboukhov > Mojolicious-Plugin-MailException-0.19 > Mojolicious::Plugin::MailException

Download:
Mojolicious-Plugin-MailException-0.19.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Module Version: 0.19   Source  

NAME ^

Mojolicious::Plugin::MailException - Mojolicious plugin to send crash information by email

SYNOPSIS ^

    package MyServer;
    use Mojo::Base 'Mojolicious';

    sub startup {
        my ($self) = @_;

        $self->plugin(MailException => {
            from    => 'robot@my.site.com',
            to      => 'mail1@my.domain.com, mail2@his.domain.com',
            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.

COPYRIGHT AND LICENCE ^

 Copyright (C) 2012 by Dmitry E. Oboukhov <unera@debian.org>
 Copyright (C) 2012 by Roman V. Nikolaev <rshadow@rambler.ru>

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.

syntax highlighting: