ingress-it-solutions / bugtrap
Laravel 5 bug notifier
Requires
- php: >=5.6.0
- guzzlehttp/guzzle: ~6.0
- predis/predis: ~1.0
This package is auto-updated.
Last update: 2024-10-21 21:33:33 UTC
README
BugTrap
Laravel 5 package for logging errors to bugtrap.io
Installation
You can install the package through Composer.
composer require ingress-it-solutions/bugtrap
In case of Laravel 5.5, you still need to manually register this as the service provider has to be the first provider that needs to be registered.
You must install this service provider. Make this the very first provider in list.
// config/app.php 'providers' => [ // Make this very first provider BugTrap\ServiceProvider::class, //... //... ];
Then publish the config and migration file of the package using artisan.
php artisan vendor:publish --provider="BugTrap\ServiceProvider"
And adjust config file (config/bugtrap.php
) with your desired settings.
Add to your Exception Handler's (/app/Exceptions/Handler.php
by default) report
method these line and add the use line:
use BugTrap\BugTrap; ... public function render(Exception $e, $request) { if ($this->shouldReport($e)) { (new BugTrap)->handle($e, $request); } return parent::report($e); }
Usage
All that is left to do is to define 3 ENV configuration variables.
BT_KEY=
BT_PROJECT_KEY=
BT_URL=
BT_KEY
is your profile key which authorises your account to the API.
BT_PROJECT_KEY
is your project API key which you receive when creating a project.
BT_PROJECT_KEY
is your base URL of Bugtrap Installation.
Get these variables at bugtrap.com
Optional
You can also return a specific view if an error has been generated. This eliminates the ugly 'Whoops something went wrong' page.
All you have to do is create a view (500.blade.php
) that you return for your user, recommended in the views/errors
directory.
Then in your App\Exceptions\Handler.php
add the following code inside the render
method:
if (($errorView = (new BugTrap)->errorView()) !== false) { return $errorView; }
Make sure you add this before the return parent::render($request, $exception);
code.
Example:
/** * Render an exception into an HTTP response. * * @param \Illuminate\Http\Request $request * @param \Exception $exception * @return \Illuminate\Http\Response */ public function render($request, Exception $exception) { ... if (($errorView = (new BugTrap)->errorView()) !== false) { return $errorView; } return parent::render($request, $exception); }
License
The bugtrap package is open source software licensed under the license MIT