code = $e->code; $this->message = $e->message; } else { if (config('app_debug')) { return parent::render($e); } $this->code = 0; $this->message = $e->getMessage() ?: '很抱歉,服务器内部错误'; $this->recordErrorLog($e); } return json(['msg' => $this->message, 'code' => $this->code]); } /** * Report or log an exception. * * @param \Exception $exception * @return void */ public function report(Exception $exception) { // 不使用内置的方式记录异常日志 } /** * 将异常写入日志 * @param Exception $e */ private function recordErrorLog(Exception $e) { $data = [ 'file' => $e->getFile(), 'line' => $e->getLine(), 'message' => $this->getMessage($e), 'code' => $this->getCode($e), ]; $log = "[{$data['code']}]{$data['message']} [{$data['file']}:{$data['line']}]"; $log .= "\r\n" . $e->getTraceAsString(); Log::record($log, 'error'); } }