From 13965921418b94d6f4a23c531539b2b067b542ec Mon Sep 17 00:00:00 2001 From: zhilv Date: Thu, 2 Apr 2026 23:51:01 +0800 Subject: [PATCH] feat: split backend debug logs into dedicated page --- src/App.tsx | 31 +- src/index.tsx | 4 + src/pages/debug-logs/DebugLogs.tsx | 477 +++++++++++++++++++++++++++++ src/pages/logs/Logs.tsx | 367 +--------------------- src/service/debugLog.ts | 42 ++- src/service/wk.ts | 11 +- 6 files changed, 551 insertions(+), 381 deletions(-) create mode 100644 src/pages/debug-logs/DebugLogs.tsx diff --git a/src/App.tsx b/src/App.tsx index da3edc0..88a31cf 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -24,12 +24,6 @@ import { } from "~/service/update"; import { versionApi } from "~/service/wk"; -const asideList = [ - { label: "账号", url: "/account" }, - { label: "日志", url: "/logs" }, - { label: "设置", url: "/setting" }, -]; - type DownloadState = "idle" | "downloading" | "done" | "error"; type UpdateCheckState = | "idle" @@ -175,6 +169,23 @@ const App: ParentComponent = (props) => { const buildText = createMemo(() => version()?.data.BuildAt ?? "unknown"); const authorText = createMemo(() => version()?.data.GitAuthor ?? "unknown"); const emailText = createMemo(() => version()?.data.GitEmail ?? "unknown"); + const modeText = createMemo(() => version()?.data.Mode ?? "unknown"); + const isDebugMode = createMemo( + () => modeText().toLowerCase() === "debug", + ); + const asideList = createMemo(() => { + const items = [ + { label: "账号", url: "/account" }, + { label: "日志", url: "/logs" }, + ]; + + if (isDebugMode()) { + items.push({ label: "后端日志", url: "/debug-logs" }); + } + + items.push({ label: "设置", url: "/setting" }); + return items; + }); const versionErrorText = createMemo(() => { const error = version.error; if (!error) { @@ -186,6 +197,7 @@ const App: ParentComponent = (props) => { const versionPayloadText = createMemo(() => [ `Version: ${versionText()}`, + `Mode: ${modeText()}`, `Commit: ${commitText()}`, `Build: ${buildText()}`, `Author: ${authorText()}`, @@ -355,7 +367,7 @@ const App: ParentComponent = (props) => {