diff --git a/src/TaxBaik.Web.Client/Components/Admin/Pages/ClientLogs.razor b/src/TaxBaik.Web.Client/Components/Admin/Pages/ClientLogs.razor index a8ea13e..f33b0ae 100644 --- a/src/TaxBaik.Web.Client/Components/Admin/Pages/ClientLogs.razor +++ b/src/TaxBaik.Web.Client/Components/Admin/Pages/ClientLogs.razor @@ -14,6 +14,16 @@
+
+ + + +
@if (_loading) {

불러오는 중...

@@ -45,12 +55,23 @@ @code { private readonly List _entries = []; private bool _loading = true; + private string _query = ""; + private string _level = ""; protected override async Task OnInitializedAsync() { + await LoadAsync(); + } + + private async Task LoadAsync() + { + _loading = true; + _entries.Clear(); + try { - var result = await Http.GetFromJsonAsync>("/taxbaik/api/client-logs/recent"); + var url = $"/taxbaik/api/client-logs/recent?q={Uri.EscapeDataString(_query ?? string.Empty)}&level={Uri.EscapeDataString(_level ?? string.Empty)}"; + var result = await Http.GetFromJsonAsync>(url); if (result is not null) { _entries.AddRange(result); @@ -62,6 +83,7 @@ finally { _loading = false; + StateHasChanged(); } } diff --git a/src/TaxBaik.Web.Client/Components/Admin/Pages/DashboardOverview.razor b/src/TaxBaik.Web.Client/Components/Admin/Pages/DashboardOverview.razor index 29ee7cd..c2d2985 100644 --- a/src/TaxBaik.Web.Client/Components/Admin/Pages/DashboardOverview.razor +++ b/src/TaxBaik.Web.Client/Components/Admin/Pages/DashboardOverview.razor @@ -4,11 +4,24 @@

Home

대시보드

-

관리자 대시보드 초기화 문제를 분리하는 최소 렌더 화면입니다.

+

핵심 운영 상태와 최근 오류를 한 번에 확인합니다.

-
-
대시보드 본문을 단계적으로 복원하며 `get` interop 오류를 추적합니다.
-
현재 화면은 JS 호출 없이 렌더만 수행합니다.
+
+
+ 오류 진단 +
브라우저 오류와 JS interop 실패는 클라이언트 로그에서 바로 추적합니다.
+ 클라이언트 로그 보기 +
+
+ 운영 메뉴 +
대시보드 복원 후 CRM, 홈페이지, 문의 관리 화면을 표준 템플릿으로 확장합니다.
+ 문의 관리로 이동 +
+
+ 배포 확인 +
하위 경로 배포와 렌더러 분리를 유지하도록 라우트 린트를 적용합니다.
+ 최근 에러 확인 +
diff --git a/src/TaxBaik.Web/Endpoints/ClientLogs/GetRecentLogsEndpoint.cs b/src/TaxBaik.Web/Endpoints/ClientLogs/GetRecentLogsEndpoint.cs index c8745b2..bb8f0de 100644 --- a/src/TaxBaik.Web/Endpoints/ClientLogs/GetRecentLogsEndpoint.cs +++ b/src/TaxBaik.Web/Endpoints/ClientLogs/GetRecentLogsEndpoint.cs @@ -18,12 +18,10 @@ public sealed class RecentClientLogEntry public sealed class GetRecentLogsEndpoint : EndpointWithoutRequest> { - private readonly ILogger _logger; private readonly IWebHostEnvironment _environment; - public GetRecentLogsEndpoint(ILogger logger, IWebHostEnvironment environment) + public GetRecentLogsEndpoint(IWebHostEnvironment environment) { - _logger = logger; _environment = environment; } @@ -35,6 +33,11 @@ public sealed class GetRecentLogsEndpoint : EndpointWithoutRequest("level"); + var source = Query("source"); + var route = Query("route"); + var term = Query("q"); + var logDir = Path.Combine(_environment.ContentRootPath, "logs"); if (!Directory.Exists(logDir)) { @@ -56,7 +59,9 @@ public sealed class GetRecentLogsEndpoint : EndpointWithoutRequest