diff --git a/routes/web.php b/routes/web.php index 86a06c5..d414f41 100644 --- a/routes/web.php +++ b/routes/web.php @@ -1,7 +1,40 @@ false, 'redis' => false, 'cache' => false]; + + try { + DB::connection()->getPdo(); + $checks['db'] = true; + } catch (\Throwable) {} + + try { + Redis::ping(); + $checks['redis'] = true; + } catch (\Throwable) {} + + try { + cache()->put('health_check', 'ok', 5); + $checks['cache'] = cache()->get('health_check') === 'ok'; + } catch (\Throwable) {} + + $healthy = $checks['db'] && $checks['redis'] && $checks['cache']; + + return response()->json([ + 'status' => $healthy ? 'ok' : 'degraded', + 'timestamp' => now()->toIso8601String(), + 'environment' => app()->environment(), + 'php_version' => PHP_VERSION, + 'laravel' => app()->version(), + 'memory_mb' => round(memory_get_usage(true) / 1024 / 1024, 2), + 'checks' => $checks, + ], $healthy ? 200 : 503); +}); + Route::get('/', function () { return view('welcome'); });