Appearance
日志与故障排查
正式环境默认只保留 D2CS 运营日志用于 BOT/行为分析。BNETD、D2CS 诊断、D2DBS、D2GS、D2GE 和 API 调试日志按后台开关临时启用,定位完成立即关闭。
分层定位
| 现象 | 首查 | 常见原因 |
|---|---|---|
| 登录失败/命令 Unknown | BNetD 命令组、账号库、客户端版本 | command_groups.conf 未部署、连错 BNetD、账号缓存或权限组。 |
| VIP 国度不可进 | D2CS VIP 准入、PvPGN 到期字段、国度会话 | 免费/VIP D2CS 混版、内部登录回包缺 VIP、拒绝路径错误。 |
| 建房后掉线 | D2CS/D2DBS/D2GS 注册与 save version | 端口/密码不匹配、D2GS 未注册、v92/v96 错配。 |
| 一直连接中 | 国度会话状态、D2CS 返回包、目标 D2GS | 先前失败会话未清理、错误关机流程、VIP/免费实例交叉。 |
| 论坛 VIP 时间差 8 小时 | UTC 存储和展示时区 | 把 Unix 时间戳再次当本地时间转换。 |
| 自助预检“数据服务不可用” | 论坛 -> API health、签名、CA、版本入口 | API 路径重复 /api、CA/签名错、Agent 不可达。 |
| 修改成功但角色没变化 | 订单回执、revision、目标 CHARSAVE | 写到错误版本目录、角色在线、论坛显示旧索引。 |
| 中文乱码 | 文件编码、PHP 版本、游戏客户端编码 | UTF-8/GBK/Big5 混用或二次转码。 |
域名打开后跳转到 DNSPod webblock.html | 云厂商的备案/域名接入策略在 IIS 前拦截 | 先在云控制台核对域名备案与接入状态;服务器本机带 Host Header 返回 200 时,不要修改站点代码。 |
排查原则
从玩家入口沿链路检查:浏览器/客户端 -> IIS/BNetD -> 论坛/后台/D2CS -> Agent/D2DBS -> D2GS/存档。每一步记录 request ID、operation ID、账号、角色、版本和时间,不记录密码、令牌或完整存档。
调试前记录原日志开关,结束后恢复,并确认服务 PID 未因所谓“热加载”改变。需要抓包或详细日志时只对测试账号和短时间窗口开启。