diff --git a/app/ExceptionHandle.php b/app/ExceptionHandle.php index 453d1260..1d3002d1 100644 --- a/app/ExceptionHandle.php +++ b/app/ExceptionHandle.php @@ -1,4 +1,5 @@ $e->getMessage(), + 'file' => $e->getFile(), + 'line' => $e->getLine(), + 'trace' => $e->getTraceAsString(), + ])); + // return json([ + // 'code' => 100500, + // 'message' => 'System error', + // ]); // 添加自定义异常处理机制 - // 其他错误交给系统处理 return parent::render($request, $e); } diff --git a/app/home/middleware/ApiLogMiddleware.php b/app/home/middleware/ApiLogMiddleware.php index 12c9c021..5f72d4ad 100644 --- a/app/home/middleware/ApiLogMiddleware.php +++ b/app/home/middleware/ApiLogMiddleware.php @@ -40,8 +40,14 @@ class ApiLogMiddleware if ($request->method(true) === 'OPTIONS') { return response()->send(); } + $response = $next($request); $path = $request->pathinfo(); $shouldLog = in_array($path, $this->logRoutes); + $responseData = $response instanceof Response ? $response->getData() : null; + // 如果接口返回错误码,也记录日志 + if ($responseData && isset($responseData['code']) && $responseData['code'] != 0) { + $shouldLog = true; + } $logData = []; if ($shouldLog) { $ip = (new BaseHomeService())->getClientRealIp(); @@ -58,11 +64,9 @@ class ApiLogMiddleware } } - $response = $next($request); - if ($shouldLog && $response instanceof Response) { - $logData['response'] = $response->getData(); + $logData['response'] = $responseData; } //写入redis if (!empty($logData)) {