vis/log-envelope

Laravel 5 email on error

1.2.7 2018-03-03 10:21 UTC

This package is not auto-updated.

Last update: 2024-11-10 03:36:10 UTC


README

Laravel 5 package for logging errors to your e-mail(s), telegram, slack and database!

Installation

You can install the package through Composer.

composer require vis/log-envelope

You must install this service provider. Make this the very first provider in list.

// config/app.php
'providers' => [
    // make this very first provider
    // so fatal exceptions can be catchable by envelope
    Yaro\LogEnvelope\ServiceProvider::class,
    //...
];

Then publish the config and migration file of the package using artisan.

php artisan vendor:publish --provider="Yaro\LogEnvelope\ServiceProvider"

Change your Exception Handler's (/app/Exceptions/Handler.php by default) report method like this:

//...
public function report(Exception $e)
{
    $res = parent::report($e);
    
    \LogEnvelope::send($e);
    //...
    
    return $res; 
}
//...

Change config yaro.log-envelope.php for your needs. You can choose to log your errors to your database or send them to your email/telegram/slack. Emails are preferable, cuz they contains more debug information, such as traceback.

Also there is force_config option, where you can define which configs to override for LogEnvelope execution. E.g., if you using some smtp for mail sending and queue it, you can change configs to send LogEnvelope emails immediately and not via smtp:

'force_config' => [
    'mail.driver' => 'sendmail',
    'queue.default' => 'sync',
],

TODO

  • highlight traceback in emails
  • page with logs from database

Results

Something like this with other info for debugging.

Email:

results

Slack:

results

Telegram:

results

License

The MIT License (MIT). Please see LICENSE for more information.