Как сообщить обо всех исключениях в Bugsnag из приложения Laravel 5.2

Установив Laravel и Bugsnag, используя соответствующую документацию, я обнаружил, что NotFoundHttpException ошибка, например, не сообщается в Bugsnag (но notifyError да). Мой вопрос заключается в том, как установить его так, чтобы сообщать обо всех ошибках, не используя эти строки снова и снова:

Bugsnag::notifyError('ErrorType', 'Something bad happened');

или же

try {
    // Some potentially crashy code
} catch (Exception $ex) {
    Bugsnag::notifyException($ex);
}

Я думаю об использовании Handler в app/exceptions вот так:

public function report(Exception $e)
{
    Bugsnag::notifyException($e);
    parent::report($e);
}

Но если это не упомянуто в документации по интеграции Laravel/Bugsnag, это хорошая практика? Это видео Laracast не описывает каких-либо изменений в обработчике исключений, и установка, кажется, работает как задумано.

1 ответ

В App\Exceptions\Handler удалите все классы исключений из $dontReport. Я не уверен, почему вы хотите сообщить обо всех ошибках, но это должно сделать это для вас.

В

\ APP \ Исключения \ handler.php

затирать internalDontReport имущество. Ниже приведено значение по умолчанию, которое наследуется от \vendor\laravel\framework\src\Illuminate\Foundation\Exceptions\Handler.php

protected $internalDontReport = [
    AuthenticationException::class,
    AuthorizationException::class,
    HttpException::class,
    HttpResponseException::class,
    ModelNotFoundException::class,
    TokenMismatchException::class,
    ValidationException::class,
];
Другие вопросы по тегам