View on
MetaCPAN
search.cpan.org is shutting down
For details read Perl NOC. After June 25th this page will redirect to MetaCPAN.org
Dmitry E. Oboukhov > Mojolicious-Plugin-MailException > Mojolicious::Plugin::MailException

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

Dependencies

Annotate this POD

Website

View/Report Bugs
Module Version: 0.21   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'
            },

            stack   => 10
        });
    }

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

stack

Stack size for crash mail. Default is 20.

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: