shouldReport($exception)) { $this->sendEmail($exception); } parent::report($exception); } /** * Render an exception into an HTTP response. * * @param \Illuminate\Http\Request $request * @return Response * * @throws Throwable */ public function render($request, Throwable $exception) { return parent::render($request, $exception); } public function sendEmail(Throwable $exception) { try { $e = FlattenException::create($exception); $handler = new HtmlErrorRenderer(true); // boolean, true raises debug flag... $css = $handler->getStylesheet(); $content = $handler->getBody($e); // Mail::to(config('app.exception_mail'))->send(new MailContact($contact)); // Verwende normale Mail-Klasse statt Facade, um Probleme bei der Initialisierung zu vermeiden $to = config('app.exception_mail'); $subject = 'gruene-seele Exception: '.\Request::fullUrl(); if ($to) { \Mail::send('emails.exception', compact('css', 'content'), function ($message) use ($to, $subject) { $message ->to($to) ->subject($subject); }); } } catch (Throwable $ex) { // Einfache Fehlerprotokollierung ohne Facade file_put_contents( storage_path('logs/laravel-'.date('Y-m-d').'.log'), '['.date('Y-m-d H:i:s').'] exception-handler-error: '.$ex->getMessage()."\n", FILE_APPEND ); } } }