上传日志
上传日志的目的,是把 TWS / IB Gateway 本地生成的诊断文件发送给 IBKR 支持人员查看。它适合用于排查平台连接、登录、行情权限、订单状态、API 通信和客户端异常。
上传日志不是“自动修复”功能,也不等于已经完整描述了问题。你仍然需要在工单、邮件或聊天中说明问题发生时间、账户类型、使用的客户端、clientId、请求内容和错误现象。
什么时候需要上传
Section titled “什么时候需要上传”常见需要上传日志的情况:
- IBKR 支持人员明确要求你上传日志。
- TWS / IB Gateway 频繁断线、卡住、崩溃或无法登录。
- API 已连接,但请求没有按预期返回。
- 订单提交、修改或撤单后,状态和代码回调对不上。
- 行情请求返回权限、延迟、无数据或 pacing 相关问题。
- 你已经能稳定复现问题,希望让支持人员查看完整时间线。
如果只是代码写法问题,例如 contract 字段填错、order 参数不完整、clientId 冲突,上传日志不一定是第一步。先把错误回调、请求参数和最小复现脚本整理清楚,通常更快。
上传前先准备这些信息,后续和支持人员沟通会更顺:
| 信息 | 为什么重要 |
|---|---|
| 问题发生日期和时间 | 支持人员需要在日志里定位具体片段 |
| TWS 还是 IB Gateway | 两者界面入口和日志内容不完全一样 |
| 模拟账户还是真实账户 | 排查权限、订单和账户数据时要区分 |
| 操作系统 | Windows、macOS、Linux 的路径和权限不同 |
| API 语言 | Python、Java、C#、C++ 等错误表现可能不同 |
clientId | 用来定位对应的 API 通信日志 |
| 请求类型 | 行情、历史 K 线、下单、账户、合约查询等 |
| 错误码或异常文本 | 方便和日志内容互相印证 |
如果问题和订单有关,还要记录合约、订单类型、数量、价格、orderId、是否使用 whatIf。不要在公开材料或对外文字中暴露完整账号、持仓、资金和私有策略。
TWS 上传入口
Section titled “TWS 上传入口”在 TWS 已经登录的情况下,常见入口是:
- 打开 TWS。
- 进入顶部菜单
Help。 - 选择
Upload Diagnostics。 - 在弹出的上传窗口中填写问题说明。
- 按要求提交日志。
官方资料也提到 Windows 可以使用快捷键 Ctrl + Alt + H 打开上传诊断窗口。不同版本、不同界面布局下菜单名称可能略有差异,但核心动作都是上传诊断日志给 IBKR 支持。
IB Gateway 上传入口
Section titled “IB Gateway 上传入口”IB Gateway 的界面比 TWS 简化,入口通常也在菜单中:
- 打开并登录 IB Gateway。
- 进入
Help。 - 选择
Upload Diagnostics。 - 填写问题说明。
- 提交日志。
如果你是在服务器上运行 IB Gateway,要确认图形界面可以操作上传窗口。无头环境、远程桌面、VNC、Docker 或权限受限环境可能会影响文件选择和上传窗口显示。
macOS / Linux 上,官方说明的快捷键是 Cmd + Option + H。如果你通过远程桌面或 VNC 操作,快捷键可能被远程工具拦截,优先使用菜单入口。
上传选项怎么选
Section titled “上传选项怎么选”打开 Upload Diagnostics 后,建议点右上角的小箭头切换到 Advanced View。常见选择如下:
| 选项 | 建议 |
|---|---|
Full internal state of the application | 一般按支持要求勾选,能提供更完整的客户端状态 |
Include previous days logs and settings | 问题发生在今天时通常不要勾选;问题发生在前几天时再按需要勾选 |
reason | 写清楚问题原因、时间、clientId、工单号或支持人员姓名 |
如果已经有工单号,可以在 reason 里写 ATTENTION: 加工单号或支持人员姓名。这样支持人员更容易把上传记录和沟通记录对应起来。
上传窗口里的备注不要只写“API not working”。建议写成可定位的格式:
TWS API issue.Date/time: 2026-06-13 10:25 China time.Client: TWS paper account.API language: Python ibapi.clientId: 910.Request: reqHistoricalData for AAPL 1 day 5 mins bars.Problem: error callback returned code XXX, and no historicalDataEnd callback.Steps: connect -> reqCurrentTime OK -> reqHistoricalData failed.上面只是格式示例,实际内容要按你的问题填写。重点是让支持人员能直接知道从日志哪个时间点、哪个 clientId、哪个请求开始看。
上传后还要做什么
Section titled “上传后还要做什么”上传日志后,建议继续做这几件事:
- 记录上传时间。
- 保存支持人员给你的 case number 或聊天记录。
- 在工单或回复里补充问题说明。
- 附上最小复现脚本和错误输出。
- 如果是订单问题,必要时附上已脱敏的 TWS 订单状态信息。
- 如果是 API 问题,说明是否已经开启 API message log 和
Detail日志级别。
上传动作只负责把日志文件送出去;问题描述、复现步骤和错误输出仍然要单独提供。否则支持人员可能能看到大量日志,却不知道该从哪一段开始看。
上传日志会上传我的代码吗
Section titled “上传日志会上传我的代码吗”通常上传的是 TWS / IB Gateway 诊断日志,不会自动上传你本地项目代码。但日志里可能包含账户、合约、订单、连接和请求相关信息。提交前按 IBKR 支持要求操作,不要把日志文件随意发给第三方。
上传日志后为什么还要导出日志
Section titled “上传日志后为什么还要导出日志”上传是提交给 IBKR 支持查看;导出是把可读日志保存到本地,方便你自己或团队排查。两者用途不同。后面的“导出日志”和“读取导出的日志”会单独说明。
我没有看到 Upload Diagnostics
Section titled “我没有看到 Upload Diagnostics”先确认你使用的是 TWS 或 IB Gateway,而不是网页版 Client Portal。再检查顶部菜单是否折叠、窗口是否过小、语言设置是否让菜单翻译成了中文。如果仍然找不到,Windows 可以使用快捷键 Ctrl + Alt + H,macOS / Linux 可以使用 Cmd + Option + H 试一次。
上传失败怎么办
Section titled “上传失败怎么办”先检查网络连接、代理、防火墙和客户端是否仍然在线。上传失败时,不要反复关闭窗口导致日志线索丢失,可以先导出本地日志,保留问题发生时间,再联系支持人员确认下一步提交方式。