Files
xyzw_web_helper/MD说明文件夹/阶段1-logger系统测试指南.md
2025-10-17 20:56:50 +08:00

174 lines
3.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 阶段1: Logger系统测试指南
## ✅ 已完成的工作
1. ✅ 添加了 `src/utils/logger.js` - 专业日志系统
2. ✅ 修改了 `src/stores/tokenStore.js` - 集成logger系统
3. ✅ 批量替换了139处日志调用
---
## 🧪 测试步骤
### 1. 启动开发服务器
```bash
npm run dev
```
### 2. 打开浏览器控制台
打开Chrome DevToolsF12切换到Console标签
### 3. 测试日志级别控制
在控制台输入以下命令测试:
#### 测试1: 静默模式(只显示警告和错误)
```javascript
wsDebug.quiet()
```
**预期结果**: 控制台消息会少很多只显示WARNING和ERROR级别
#### 测试2: 正常模式(显示信息级别)
```javascript
wsDebug.normal()
```
**预期结果**: 显示INFO、WARN、ERROR级别的日志
#### 测试3: 调试模式(显示所有调试信息)
```javascript
wsDebug.debug()
```
**预期结果**: 显示DEBUG、INFO、WARN、ERROR级别的日志
#### 测试4: 详细模式(显示所有日志)
```javascript
wsDebug.verbose()
```
**预期结果**: 显示所有级别的日志包括VERBOSE
### 4. 测试WebSocket连接日志
1. 选择一个Token并连接
2. 观察控制台输出
**应该看到格式化的日志**
```
[HH:MM:SS] [TOKEN] [INFO] Token更新成功
[HH:MM:SS] [WS] [INFO] 🔗 WebSocket连接: token_xxx
[HH:MM:SS] [TOKEN] [DEBUG] 开始更新token...
```
### 5. 测试日志持久化
1. 刷新页面
2. 查看日志级别是否保持
**预期结果**:
- 设置的日志级别应该保存在localStorage中
- 刷新后仍然生效
---
## 🎯 验收标准
- [ ] 浏览器控制台可以访问`wsDebug`对象
- [ ] `wsDebug.quiet()` 减少日志输出
- [ ] `wsDebug.normal()` 恢复正常日志
- [ ] `wsDebug.debug()` 显示调试日志
- [ ] `wsDebug.verbose()` 显示所有日志
- [ ] 日志格式包含时间戳、命名空间、级别
- [ ] 刷新页面后日志级别保持
- [ ] 生产环境默认只显示WARN和ERROR
- [ ] WebSocket连接正常工作
- [ ] Token选择和切换正常
- [ ] 批量任务功能不受影响通过shouldLog配置仍然可用
---
## 📊 对比效果
### 修改前:
```
❌ 解析 gameTokens 失败,使用空数组
[TokenStore] 开始更新token角色ID: token_xxx
[TokenStore] 更新前的token数据: {...}
...(大量日志)
```
### 修改后:
```
[10:30:15] [TOKEN] [ERROR] ❌ 解析 gameTokens 失败,使用空数组
[10:30:16] [TOKEN] [INFO] Token更新成功
[10:30:16] [WS] [INFO] 🔗 WebSocket连接: token_xxx
```
**优势**
- ✅ 格式统一,易于阅读
- ✅ 包含时间戳,方便追踪
- ✅ 可以动态调整日志级别
- ✅ 生产环境自动减少日志
- ✅ 不影响现有功能
---
## 🐛 常见问题
### Q1: 控制台找不到wsDebug对象
**A**: 检查logger.js是否正确导入到tokenStore.js
### Q2: 日志没有减少
**A**:
1. 确认执行了`wsDebug.quiet()`
2. 刷新页面
3. 检查localStorage中的`ws_debug_level`
### Q3: 批量任务日志配置失效
**A**: 不会失效shouldLog机制仍然保留用于批量任务日志配置
### Q4: 日志格式显示异常
**A**: 检查浏览器Console设置确保启用了时间戳显示
---
## 🎉 测试通过后
完成测试后更新TODO状态
- [x] 阶段1-1: 添加logger.js ✅
- [x] 阶段1-2: 修改tokenStore.js ✅
- [x] 阶段1-3: 测试logger系统 ✅
**下一步**: 进入阶段2 - 实现月度任务系统
---
## 💡 调试技巧
### 临时启用详细日志
```javascript
// 在控制台执行
wsDebug.verbose()
// 执行你要调试的操作
// 完成后恢复
wsDebug.normal()
```
### 查看当前日志级别
```javascript
localStorage.getItem('ws_debug_level')
// 返回: "2" (INFO), "3" (DEBUG), etc.
```
### 清除日志设置
```javascript
localStorage.removeItem('ws_debug_level')
localStorage.removeItem('ws_debug_verbose')
location.reload()
```
---
**准备好后,进入下一阶段!** 🚀