feat: 添加 Analytics 分析功能(行为追踪、错误码、协议更新)

This commit is contained in:
qzl
2026-04-02 11:52:23 +08:00
parent b101826de5
commit 7b6dbe72c3
24 changed files with 682 additions and 52 deletions
+8 -6
View File
@@ -545,8 +545,8 @@ app.mount("/analytics", StaticFiles(directory="web/dist", html=True), name="anal
1. 前端登录页输入密码
2. 调用 `POST /api/v1/analytics/login` 验证
3. 后端读取 `.env``ANALYTICS_PASSWORD` 验证
4. 验证成功返回 HMAC Token5分钟有效),前端存 sessionStorage
5. 后续请求带 Token,后端验证
4. 验证成功返回 HMAC Token(5分钟有效)和数据读取基地址,前端存 sessionStorage
5. 后续请求带 Bearer Token,后端验证后返回对应日期 JSONL 内容
### 6.5 页面设计
@@ -569,9 +569,9 @@ app.mount("/analytics", StaticFiles(directory="web/dist", html=True), name="anal
### 6.6 数据读取
- 前端通过 `GET /api/v1/analytics/summary` 获取聚合数据
- 后端解析 `backend/data/analytics/*.jsonl` 文件并聚合
- 提供 `GET /api/v1/analytics/daily` 等查询接口
- 前端登录成功后获取 `data_base_url`(当前为 `/api/v1/analytics/data`
- 前端按日期请求 `GET /api/v1/analytics/data/{YYYY-MM-DD}` 获取 JSONL 文本并在页面聚合
- 后端读取 `backend/data/analytics/*.jsonl` 原始数据返回
---
@@ -601,7 +601,9 @@ SOCIAL_ANALYTICS__PASSWORD=your-secure-password
**响应(成功):**
```json
{
"token": "jwt-token-here"
"success": true,
"token": "signed-token",
"data_base_url": "/api/v1/analytics/data"
}
```