跳转到内容

上传日志

上传日志的目的,是把 TWS / IB Gateway 本地生成的诊断文件发送给 IBKR 支持人员查看。它适合用于排查平台连接、登录、行情权限、订单状态、API 通信和客户端异常。

上传日志不是“自动修复”功能,也不等于已经完整描述了问题。你仍然需要在工单、邮件或聊天中说明问题发生时间、账户类型、使用的客户端、clientId、请求内容和错误现象。

常见需要上传日志的情况:

  • 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 已经登录的情况下,常见入口是:

  1. 打开 TWS。
  2. 进入顶部菜单 Help
  3. 选择 Upload Diagnostics
  4. 在弹出的上传窗口中填写问题说明。
  5. 按要求提交日志。

官方资料也提到 Windows 可以使用快捷键 Ctrl + Alt + H 打开上传诊断窗口。不同版本、不同界面布局下菜单名称可能略有差异,但核心动作都是上传诊断日志给 IBKR 支持。

IB Gateway 的界面比 TWS 简化,入口通常也在菜单中:

  1. 打开并登录 IB Gateway。
  2. 进入 Help
  3. 选择 Upload Diagnostics
  4. 填写问题说明。
  5. 提交日志。

如果你是在服务器上运行 IB Gateway,要确认图形界面可以操作上传窗口。无头环境、远程桌面、VNC、Docker 或权限受限环境可能会影响文件选择和上传窗口显示。

macOS / Linux 上,官方说明的快捷键是 Cmd + Option + H。如果你通过远程桌面或 VNC 操作,快捷键可能被远程工具拦截,优先使用菜单入口。

打开 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、哪个请求开始看。

上传日志后,建议继续做这几件事:

  1. 记录上传时间。
  2. 保存支持人员给你的 case number 或聊天记录。
  3. 在工单或回复里补充问题说明。
  4. 附上最小复现脚本和错误输出。
  5. 如果是订单问题,必要时附上已脱敏的 TWS 订单状态信息。
  6. 如果是 API 问题,说明是否已经开启 API message log 和 Detail 日志级别。

上传动作只负责把日志文件送出去;问题描述、复现步骤和错误输出仍然要单独提供。否则支持人员可能能看到大量日志,却不知道该从哪一段开始看。

通常上传的是 TWS / IB Gateway 诊断日志,不会自动上传你本地项目代码。但日志里可能包含账户、合约、订单、连接和请求相关信息。提交前按 IBKR 支持要求操作,不要把日志文件随意发给第三方。

上传日志后为什么还要导出日志

Section titled “上传日志后为什么还要导出日志”

上传是提交给 IBKR 支持查看;导出是把可读日志保存到本地,方便你自己或团队排查。两者用途不同。后面的“导出日志”和“读取导出的日志”会单独说明。

先确认你使用的是 TWS 或 IB Gateway,而不是网页版 Client Portal。再检查顶部菜单是否折叠、窗口是否过小、语言设置是否让菜单翻译成了中文。如果仍然找不到,Windows 可以使用快捷键 Ctrl + Alt + H,macOS / Linux 可以使用 Cmd + Option + H 试一次。

先检查网络连接、代理、防火墙和客户端是否仍然在线。上传失败时,不要反复关闭窗口导致日志线索丢失,可以先导出本地日志,保留问题发生时间,再联系支持人员确认下一步提交方式。