, \Psr\Log\LogLevel::*> */ protected $levels = [ ]; /** * A list of the exception types that are not reported. * * @var array> */ protected $dontReport = [ ]; /** * A list of the inputs that are never flashed to the session on validation exceptions. * * @var array */ protected $dontFlash = [ 'current_password', 'password', 'password_confirmation', ]; /** * Register the exception handling callbacks for the application. * * @return void */ public function register() { $this->reportable(function (ClientException $e) { logger()->warning($e->getMessage(), array_merge(request()->all(), request()->headers->all())); return false; }); $this->renderable(function (ClientException $e) { return response()->json([ "error" => $e->getMessage(), ]); }); $this->renderable(function (\Exception $e) { return response()->json([ "error" => $e->getMessage(), "file" => $e->getFile(), "line" => $e->getLine(), "trace" => $e->getTrace(), ]); }); $this->renderable(function (ValidationException $e) { $msg = Arr::first($e->errors()); return response()->json([ "error" => $msg[0], ], 400); }); } }