API 로그 페이지 개선: 테넌트/사용자 표시, 그룹핑, AI 분석 복사
- 테넌트/사용자 컬럼 추가 (관계 eager loading) - 그룹 ID로 연관 API 호출 필터링 및 상세 페이지에서 그룹 목록 표시 - 상태 400 이상일 때 AI 분석용 복사 버튼 추가 - Tenant 모델 네임스페이스 수정 (Tenants\Tenant)
This commit is contained in:
@@ -13,7 +13,9 @@ class ApiLogController extends Controller
|
||||
*/
|
||||
public function index(Request $request): View
|
||||
{
|
||||
$query = ApiRequestLog::query()->orderByDesc('created_at');
|
||||
$query = ApiRequestLog::query()
|
||||
->with(['tenant', 'user'])
|
||||
->orderByDesc('created_at');
|
||||
|
||||
// 필터: HTTP 메서드
|
||||
if ($request->filled('method')) {
|
||||
@@ -37,6 +39,16 @@ public function index(Request $request): View
|
||||
$query->where('url', 'like', '%' . $request->search . '%');
|
||||
}
|
||||
|
||||
// 필터: 그룹 ID
|
||||
if ($request->filled('group_id')) {
|
||||
$query->where('group_id', $request->group_id);
|
||||
}
|
||||
|
||||
// 필터: 테넌트
|
||||
if ($request->filled('tenant_id')) {
|
||||
$query->where('tenant_id', $request->tenant_id);
|
||||
}
|
||||
|
||||
// 통계
|
||||
$stats = [
|
||||
'total' => ApiRequestLog::count(),
|
||||
@@ -56,9 +68,18 @@ public function index(Request $request): View
|
||||
*/
|
||||
public function show(int $id): View
|
||||
{
|
||||
$log = ApiRequestLog::findOrFail($id);
|
||||
$log = ApiRequestLog::with(['tenant', 'user'])->findOrFail($id);
|
||||
|
||||
return view('api-logs.show', compact('log'));
|
||||
// 같은 그룹의 다른 요청들
|
||||
$groupLogs = [];
|
||||
if ($log->group_id) {
|
||||
$groupLogs = ApiRequestLog::where('group_id', $log->group_id)
|
||||
->where('id', '!=', $log->id)
|
||||
->orderBy('created_at')
|
||||
->get();
|
||||
}
|
||||
|
||||
return view('api-logs.show', compact('log', 'groupLogs'));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user