diff --git a/package.json b/package.json
index dff997c..345d4c7 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "frontend",
"private": true,
- "version": "0.1.2",
+ "version": "0.1.3",
"type": "module",
"scripts": {
"dev": "vite",
diff --git a/src/App.tsx b/src/App.tsx
index 88a31cf..c6e4953 100644
--- a/src/App.tsx
+++ b/src/App.tsx
@@ -6,10 +6,12 @@ import {
createMemo,
createResource,
createSignal,
+ onMount,
onCleanup,
} from "solid-js";
import { A, useLocation } from "@solidjs/router";
import Dialog from "~/components/dialog/Dialog";
+import { updateDebugConfig } from "~/service/debugLog";
import {
RELEASES_PAGE_URL,
type LatestRelease,
@@ -23,6 +25,7 @@ import {
resolveReleaseLink,
} from "~/service/update";
import { versionApi } from "~/service/wk";
+import { settingsStore } from "~/store/settings";
type DownloadState = "idle" | "downloading" | "done" | "error";
type UpdateCheckState =
@@ -155,7 +158,9 @@ const App: ParentComponent = (props) => {
const [downloadState, setDownloadState] = createSignal
模式: {modeText()}
+ 调试: {isDebugMode() ? "已开启" : "已关闭"}
+
Runtime
{courseTypeLabel}
日志详情
- 查看当前选中日志的完整字段与上下文。 + 按请求和响应拆分查看当前日志的完整上下文。
请选择左侧一条日志查看详情。
} >ID: {selectedDebugEntry()?.id}
-时间: {selectedDebugEntry()?.time}
-来源: {selectedDebugEntry()?.source}
-等级: {selectedDebugEntry()?.level}
-消息: {selectedDebugEntry()?.message}
-调用位置: {selectedDebugEntry()?.caller}
-Logger: {selectedDebugEntry()?.logger}
-
- {stringifyDebugFields(selectedDebugEntry()?.fields)}
-
+ ID: {selectedDebugEntry()?.id}
+时间: {selectedDebugEntry()?.time}
+来源: {selectedDebugEntry()?.source}
+等级: {selectedDebugEntry()?.level}
+消息: {selectedDebugEntry()?.message}
+URL / Path: {resolveEntrySummary(selectedDebugEntry()!)}
+Method: {selectedRequestMeta()?.method || "-"}
+响应状态: {selectedResponseMeta()?.status}
+耗时: {selectedResponseMeta()?.durationMs} ms
+调用位置: {selectedDebugEntry()?.caller}
+Logger: {selectedDebugEntry()?.logger}
+Method: {selectedRequestMeta()?.method || "-"}
+URL: {selectedRequestMeta()?.url || "-"}
+Path: {selectedRequestMeta()?.path}
+Host: {selectedRequestMeta()?.host}
+Protocol: {selectedRequestMeta()?.proto}
+Attempt: {selectedRequestMeta()?.attempt}
+Client IP: {selectedRequestMeta()?.clientIP}
+Handler: {selectedRequestMeta()?.handler}
+响应状态: {selectedResponseMeta()?.status || "-"}
+Status Code: {selectedResponseMeta()?.statusCode}
+Protocol: {selectedResponseMeta()?.proto}
+耗时: {selectedResponseMeta()?.durationMs} ms
+响应大小: {selectedResponseMeta()?.size}
+接收时间: {selectedResponseMeta()?.receivedAt}
+错误信息: {selectedResponseMeta()?.abortWithErrors}
+手动开启调试
++ 开启后显示后端日志页,并应用本地代理 / SSL 调试配置 +
+后端状态:{backendDebugState()?.enabled ? "已开启" : "已关闭"}
++ 编译模式:{backendDebugState()?.buildMode ?? "-"} +
++ 本地代理: + {backendDebugState()?.proxyConfigured + ? backendDebugState()?.proxy + : "未配置"} +
++ 跳过 SSL 校验: + {backendDebugState()?.skipSSLVerify ? "已配置" : "未配置"} +
+