TRAE
版本: 3.5.55
VSCode 版本: 1.107.1
提交: 84967093b3105381f26e13eca4ab8af60e8f40db
日期: 2026-04-30T16:27:19.975Z
Electron: 39.2.7-release.1.32.2 (aha)
Node.js: 22.21.1
V8: 14.2.231.25-electron.0
OS: Darwin arm64 25.3.0
构建版本: 2.3.24300
设备ID: 77b2c33298a8cab4ca41f556a92c22c6275c2176cd3f2b2f100188621c8ca5f6
Device Id: 7473059979744151057
Trae 社区反馈:后台异常高频网络请求
环境信息
- 系统:macOS (Darwin 25.3.0)
- Trae 版本:最新版(Electron 架构)
- 网络环境:家庭宽带(中国联通)
问题描述
Trae 在后台存在大量高频、持续的网络请求行为,即使用户完全未操作 IDE,也会不间断地发起请求。经 Wireshark + tshark + nettop 实测,发现以下异常行为:
1. 遥测数据疯狂上报
Trae 以约 每 10 分钟一次 的频率向 mon-normal.trae.ai 批量 POST 用户行为埋点数据(biz_id=marscode_nativeide_us)。
关键问题在于:该请求频繁失败(ERR_HTTP2_PING_FAILED、ERR_TIMED_OUT、ERR_CONNECTION_RESET),失败后会立即重试,形成"请求 → 失败 → 重试 → 再失败 → 再重试"的循环风暴。仅本次抓包期间的日志中,同一条上报请求就出现了 46 次记录。
2. ICube 控制面轮询过于频繁
Trae 每 10 分钟向 icube-normal.trae.ai 发起两个请求:
GET /icube/api/v1/control-url/latest— 拉取扩展控制配置POST /icube/api/v1/device/log/check— 设备日志检查
这两个请求同样经常超时失败后自动重试,进一步放大了请求量。
3. 扩展 Gallery 全量轮询
每 10 分钟重新获取一次 api.trae.com.cn/extensions/vscode/gallery 的 manifest,即使内容没有任何变化也会全量拉取。
4. 累计流量惊人
通过 nettop 监测,Trae 的 Network Helper 进程累计:
- 入站流量:~4.97 GB
- 出站流量:~48 MB
- 常态维持 9+ 个 ESTABLISHED 连接,目标均为 Akamai CDN 和字节跳动服务器
影响
- 带宽占用:后台持续消耗网络带宽,对有限流量的用户不友好
- 系统资源浪费:网络请求失败后的重试机制导致 CPU 和网络栈的不必要开销
- 隐私担忧:每 10 分钟一次的行为埋点上报,频率过高且缺乏透明度
- 对其他应用的影响:高频连接可能影响同网络环境下其他应用的网络体验
建议
- 降低遥测上报频率:10 分钟一次过于激进,建议至少延长至 1 小时或提供关闭选项
- 增加退避机制:请求失败后应使用指数退避(exponential backoff),避免重试风暴
- 提供遥测开关:在设置中明确提供关闭数据收集的选项,尊重用户选择权
- 增量更新:扩展 Gallery 的轮询应使用 ETag/Last-Modified 等机制,避免无变化时的全量拉取
- 透明化网络行为:在网络活动面板中展示 Trae 的后台请求,让用户了解流量去向
日志证据
数据来源
network-shared.log(~/Library/Application Support/Trae/logs/)sharedprocess.log(同目录下)aha_electron_2026.05*.log(~/Library/Application Support/Trae/logs/aha_log/)lsof/nettop实时网络状态curl/ping/dig连通性实测
统计概览
| 指标 | 5/7~5/9 采样期 | 5/11 今日复查 |
|---|---|---|
| 遥测上报失败次数(mon-normal.trae.ai) | 66 次(network.log) | 21 次(4.5 小时内) |
| ICube 请求失败次数(icube-normal.trae.ai) | 14 次 | 2 次 |
| Gallery manifest 轮询次数 | — | 59 次 |
| ICube control-url 拉取次数 | — | 22 次 |
| ICubePrivacyEvent 失败次数 | — | 21 次 |
| 请求编号跨度 | #70 → #1539 | #10 → #180 |
| 日志时间跨度 | 05-07 20:16 ~ 05-09 14:37 | 05-11 11:30 ~ 15:37(4.5h) |
| 累计入站流量(NetworkHelper 进程) | ~4.97 GB(多日) | ~1.25 GB(单次会话) |
| 累计出站流量 | ~48 MB | ~15.7 MB |
| 活跃连接数 | 9 个 | 12 个 |
证据一:遥测上报重试风暴(network-shared.log)
以下为 5 月 9 日 10:11 ~ 10:48 期间的连续日志,展示了在不到 40 分钟内遥测上报如何密集触发:
2026-05-09T10:11:31.270 [error] #1030: https://mon-normal.trae.ai/monitor_browser/collect/batch/?biz_id=marscode_nativeide_us&tpt=2 - error POST net::ERR_HTTP2_PING_FAILED
2026-05-09T10:11:31.271 [error] #1032: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:11:31.272 [error] #1035: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:11:31.272 [error] #1036: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:11:31.272 [error] #1034: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:11:31.273 [error] #1033: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:24:01.038 [error] #1045: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:24:01.040 [error] #1046: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:24:01.040 [error] #1049: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:24:01.040 [error] #1047: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:24:01.040 [error] #1048: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:30:18.991 [error] #1058: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:30:18.993 [error] #1063: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:30:18.993 [error] #1059: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:30:18.994 [error] #1061: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:30:18.995 [error] #1062: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:30:18.996 [error] #1060: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:30:18.996 [error] #1064: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:39:30.494 [error] #1080: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:39:30.494 [error] #1081: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:39:30.495 [error] #1082: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:45:26.426 [error] #1087: ...ERR_TIMED_OUT
2026-05-09T10:45:26.427 [error] #1088: ...ERR_TIMED_OUT
2026-05-09T10:45:26.428 [error] #1089: ...ERR_TIMED_OUT
2026-05-09T10:48:29.184 [error] #1091: ...ERR_HTTP2_PING_FAILED
2026-05-09T10:48:29.185 [error] #1092: ...ERR_HTTP2_PING_FAILED
观察:每次上报窗口内同时发起 3~7 个并发请求,全部失败;约 6~10 分钟后再次尝试,依然失败。请求编号从 #70 一路飙到 #1539,说明 Trae 在整个运行周期内发起了至少 1500+ 次网络请求。
证据二:5 月 8 日密集重试(network-shared.log)
5 月 8 日 10:03 ~ 10:17 期间,14 分钟内出现 3 轮重试风暴:
2026-05-08T10:03:23.813 [error] #408: ...ERR_TIMED_OUT
2026-05-08T10:03:23.814 [error] #410: ...ERR_CONNECTION_RESET
2026-05-08T10:03:23.814 [error] #409: ...ERR_CONNECTION_RESET
2026-05-08T10:03:23.814 [error] #414: ...ERR_CONNECTION_RESET
2026-05-08T10:06:36.283 [error] #418: ...ERR_HTTP2_PING_FAILED (仅 3 分钟后重试)
2026-05-08T10:06:36.284 [error] #420: ...ERR_HTTP2_PING_FAILED
2026-05-08T10:06:36.284 [error] #421: ...ERR_HTTP2_PING_FAILED
2026-05-08T10:06:36.284 [error] #419: ...ERR_HTTP2_PING_FAILED
2026-05-08T10:17:48.896 [error] #441: ...ERR_HTTP2_PING_FAILED
2026-05-08T10:17:48.897 [error] #444: ...ERR_HTTP2_PING_FAILED
2026-05-08T10:17:48.897 [error] #443: ...ERR_HTTP2_PING_FAILED
2026-05-08T10:17:48.897 [error] #442: ...ERR_HTTP2_PING_FAILED
2026-05-08T10:17:48.899 [error] #445: ...ERR_HTTP2_PING_FAILED
证据三:ICube 控制面请求同样反复失败(network-shared.log)
2026-05-08T08:44:31.340 [error] #394: https://icube-normal.trae.ai/icube/api/v1/control-url/latest - error GET Request timeout after 60000ms
2026-05-08T09:12:13.345 [error] #399: ...control-url/latest - error GET Request timeout after 60000ms
2026-05-08T10:30:01.182 [error] #463: ...control-url/latest - error GET net::ERR_TIMED_OUT
2026-05-08T12:13:01.008 [error] #482: ...device/log/check - error POST net::ERR_HTTP2_PING_FAILED
2026-05-08T12:29:51.335 [error] #484: ...device/log/check - error POST net::ERR_HTTP2_PING_FAILED
2026-05-08T12:41:04.818 [error] #487: ...control-url/latest - error GET net::ERR_SOCKET_NOT_CONNECTED
2026-05-08T13:13:32.169 [error] #490: ...device/log/check - error POST net::ERR_HTTP2_PING_FAILED
2026-05-08T13:28:47.589 [error] #493: ...control-url/latest - error GET Request timeout after 60000ms
2026-05-08T13:57:25.533 [error] #495: ...device/log/check - error POST net::ERR_HTTP2_PING_FAILED
2026-05-08T14:10:46.166 [error] #496: ...device/log/check - error POST net::ERR_HTTP2_PING_FAILED
2026-05-08T16:00:46.639 [error] #518: ...device/log/check - error POST net::ERR_HTTP2_PING_FAILED
2026-05-08T19:47:53.360 [error] #644: ...device/log/check - error POST net::ERR_HTTP2_PING_FAILED
2026-05-08T20:42:41.643 [error] #862: ...device/log/check - error POST net::ERR_HTTP2_PING_FAILED
证据四:Parfait 遥测数据上传(aha_electron log)
Aha 引擎中的 Parfait 组件定期收集性能指标并上传,每 10 秒采集一次系统状态,约每分钟上传一次遥测数据:
2026-05-09T08:00:40.276 [Parfait] Read full data in .../parfait/ready/682161/2/2_1778284780_2086_1650_0
2026-05-09T08:00:40.276 [Parfait] Try to upload record: 3, size: 24547 bytes.
2026-05-09T08:00:40.728 [Parfait] Received metrics network code 204
2026-05-09T08:00:40.728 [Parfait] Deleted uploaded file
同时 Aha Monitor 每隔数秒上报一次 ReportNetworkEvent:
2026-05-09T08:00:32.544 [MonitorHandler] ReportNetworkEvent: [MonitorService] ReportNetworkEvent
2026-05-09T08:00:40.727 [MonitorHandler] ReportNetworkEvent: [MonitorService] ReportNetworkEvent
2026-05-09T08:00:41.223 [MonitorHandler] ReportNetworkEvent: [MonitorService] ReportNetworkEvent
证据五:扩展 Gallery manifest 重复拉取(sharedprocess.log)
启动瞬间即触发 8 次 完全相同的 manifest 请求:
2026-05-09T11:01:41.242 [info] get extension gallery manifest {"serviceUrl":"https://api.trae.com.cn/extensions/vscode/gallery",...}
2026-05-09T11:01:41.242 [info] get extension gallery manifest {"serviceUrl":"https://api.trae.com.cn/extensions/vscode/gallery",...}
2026-05-09T11:01:41.242 [info] get extension gallery manifest {"serviceUrl":"https://api.trae.com.cn/extensions/vscode/gallery",...}
2026-05-09T11:01:41.242 [info] get extension gallery manifest {"serviceUrl":"https://api.trae.com.cn/extensions/vscode/gallery",...}
2026-05-09T11:01:41.242 [info] get extension gallery manifest {"serviceUrl":"https://api.trae.com.cn/extensions/vscode/gallery",...}
2026-05-09T11:01:41.242 [info] get extension gallery manifest {"serviceUrl":"https://api.trae.com.cn/extensions/vscode/gallery",...}
2026-05-09T11:01:41.243 [info] get extension gallery manifest {"serviceUrl":"https://api.trae.com.cn/extensions/vscode/gallery",...}
2026-05-09T11:01:41.243 [info] get extension gallery manifest {"serviceUrl":"https://api.trae.com.cn/extensions/vscode/gallery",...}
之后每 10 分钟重复一次:
2026-05-09T11:11:45.278 [info] getExtensionsControlManifest https://icube-normal.trae.ai/icube/api/v1/control-url/latest
2026-05-09T11:21:47.298 [info] getExtensionsControlManifest https://icube-normal.trae.ai/icube/api/v1/control-url/latest
2026-05-09T11:31:51.299 [info] getExtensionsControlManifest https://icube-normal.trae.ai/icube/api/v1/control-url/latest
2026-05-09T11:41:53.057 [info] getExtensionsControlManifest https://icube-normal.trae.ai/icube/api/v1/control-url/latest
证据六:实时网络连接快照(lsof + nettop)
当前 Trae Helper (NetworkService, PID 1649) 维持的连接:
192.168.18.74:58607 -> 95.101.134.105:443 (Akamai CDN)
192.168.18.74:58694 -> 95.101.134.105:443 (Akamai CDN)
192.168.18.74:58773 -> 95.101.134.105:443 (Akamai CDN)
192.168.18.74:53823 -> 95.101.134.211:443 (Akamai CDN)
192.168.18.74:63484 -> 95.101.134.96:443 (Akamai CDN)
192.168.18.74:63485 -> 95.101.134.218:443 (Akamai CDN)
192.168.18.74:63520 -> 95.101.134.112:443 (Akamai CDN)
192.168.18.74:62991 -> 95.101.134.97:443 (Akamai CDN)
192.166.18.74:63471 -> 101.72.192.159:443 (中国联通-字节跳动)
nettop 累计统计:
Trae Helper (NetworkService, PID 1649):
入站流量: 4,967,462,052 bytes (~4.97 GB)
出站流量: 47,899,906 bytes (~48 MB)
证据七:5 月 11 日复查 — 问题持续存在(network-shared.log)
时隔两天复查,相同行为完全重现:
2026-05-11T11:30:58.170 [error] #18: https://mon-normal.trae.ai/... - error POST net::ERR_HTTP2_PING_FAILED
2026-05-11T11:30:58.171 [error] #11: ...ERR_HTTP2_PING_FAILED
2026-05-11T11:30:58.171 [error] #12: ...ERR_HTTP2_PING_FAILED
2026-05-11T11:30:58.171 [error] #20: ...ERR_HTTP2_PING_FAILED
2026-05-11T11:30:58.175 [error] #19: ...ERR_HTTP2_PING_FAILED
2026-05-11T11:30:58.181 [error] #10: ...ERR_HTTP2_PING_FAILED
2026-05-11T11:56:10.632 [error] #46: ...ERR_CONNECTION_RESET
2026-05-11T11:56:10.633 [error] #47: ...ERR_CONNECTION_RESET
2026-05-11T11:56:10.633 [error] #48: ...ERR_CONNECTION_RESET
2026-05-11T12:37:17.348 [error] #60: ...ERR_CONNECTION_RESET
2026-05-11T12:37:17.351 [error] #61: ...ERR_CONNECTION_RESET
2026-05-11T14:23:07.220 [error] #84: ...ERR_CONNECTION_RESET
2026-05-11T14:23:07.221 [error] #85: ...ERR_CONNECTION_RESET
2026-05-11T14:23:07.221 [error] #86: ...ERR_CONNECTION_RESET
2026-05-11T15:29:34.848 [error] #107: ...ERR_HTTP2_PING_FAILED
2026-05-11T15:29:34.850 [error] #111: ...ERR_HTTP2_PING_FAILED
2026-05-11T15:29:34.850 [error] #108: ...ERR_HTTP2_PING_FAILED
2026-05-11T15:29:34.850 [error] #109: ...ERR_HTTP2_PING_FAILED
2026-05-11T15:29:34.851 [error] #110: ...ERR_HTTP2_PING_FAILED
2026-05-11T15:36:19.777 [error] #179: ...ERR_HTTP2_PING_FAILED
2026-05-11T15:36:19.778 [error] #180: ...ERR_HTTP2_PING_FAILED
4.5 小时内:21 次 mon-normal 遥测失败 + 2 次 ICube 失败 + 59 次 Gallery 轮询。问题没有任何改善。
证据八:5 月 11 日今日 12 个活跃连接(lsof)
192.168.18.64:50460 -> 101.72.192.159:443 (中国联通-字节跳动)
192.168.18.64:58072 -> 101.72.192.159:443 (中国联通-字节跳动)
192.168.18.64:52041 -> 101.72.192.161:443 (中国联通-字节跳动)
192.168.18.64:57678 -> 199.232.162.73:443
192.168.18.64:57986 -> 23.214.168.116:443 (Akamai CDN)
192.168.18.64:58813 -> 23.214.168.70:443 (Akamai CDN)
192.168.18.64:58727 -> 23.214.168.74:443 (Akamai CDN)
192.168.18.64:53332 -> 23.46.155.144:443 (Akamai CDN)
192.168.18.64:58788 -> 23.55.179.201:443 (Akamai CDN)
192.168.18.64:58787 -> 23.55.179.211:443 (Akamai CDN)
192.168.18.64:58269 -> 23.55.179.5:443 (Akamai CDN)
nettop 今日流量(NetworkHelper 进程 PID 1790):
入站流量: 1,253,973,196 bytes (~1.25 GB) — 仅 4.5 小时
出站流量: 15,746,700 bytes (~15.7 MB)
证据九:5 月 11 日 Gallery manifest 轮询时间线(sharedprocess.log)
启动瞬间 1 秒内 9 次重复请求,之后稳定每 ~10 分钟轮询一次,4.5 小时内共 59 次:
11:30:03 (启动瞬间 9 次)
11:40:06
11:50:07
12:00:10
12:10:12
12:20:14
12:30:16
12:40:18
12:50:20
13:00:22
13:11:47
13:39:38
14:01:47
14:11:49
14:21:51
14:33:31
14:43:33
14:53:35
15:07:49
15:15:04 (3 次)
15:17:51
15:27:53
15:35:43 (3 次)
15:37:55
根因分析:不是用户网络问题,是 Trae 的 HTTP/2 连接管理缺陷
排除用户网络环境因素
通过 curl 连续测试证明,当前网络到 Trae 各端点的连通性完全正常:
=== 连续 10 次请求 mon-normal.trae.ai ===
#1: 204 1.09s #6: 204 0.74s
#2: 204 0.92s #7: 204 0.77s
#3: 204 0.69s #8: 204 0.76s
#4: 204 0.76s #9: 204 0.66s
#5: 204 0.79s #10: 204 0.93s
全部成功,0 失败
=== 连续 10 次请求 api.trae.com.cn (国内 CDN) ===
#1: 404 0.21s #6: 404 0.20s
#2: 404 0.13s #7: 404 0.21s
#3: 404 0.17s #8: 404 0.11s
#4: 404 0.21s #9: 404 0.16s
#5: 404 0.12s #10: 404 0.23s
全部成功(404 为预期响应,国内 CDN 延迟仅 ~0.17s)
DNS 解析正常(0.000013s),Ping 0% 丢包(RTT 200ms+ 为 Akamai 海外节点的正常延迟)。
根因:HTTP/2 长连接被 NAT 超时断开
Trae 建立 HTTP/2 连接
↓
等待 10 分钟(下一次上报)
↓
中国联通 NAT 设备在此期间超时断开空闲 TCP 连接
(国内运营商 NAT 空闲超时通常 300~600 秒)
↓
Trae 不知道连接已死,继续在旧连接上发 HTTP/2 PING 帧
↓
收到 TCP RST → ERR_HTTP2_PING_FAILED / ERR_CONNECTION_RESET
↓
Trae 立即用同一条死连接重试 → 再次失败 → 并发 3~7 次重试 → 全部失败
↓
~10 分钟后再次尝试,连接仍然死亡 → 循环往复
curl 不会有这个问题,因为每次请求都建立新连接,不复用长连接。Trae 的 NetworkService 进程维护连接池,在空闲期间复用连接,正好踩在了 NAT 超时窗口上。
双方责任
网络侧(中国联通 NAT):
- 国内运营商 NAT 对空闲 TCP 连接的超时通常只有 300~600 秒
- Trae 的 10 分钟(600 秒)轮询间隔刚好踩在这个超时窗口的边界上
- Akamai 海外 CDN 节点的 RTT 偏高(200ms+ vs 国内 CDN 的 28ms),可能加剧 NAT 超时判定
Trae 侧(代码设计缺陷):
- 无死连接检测:复用 HTTP/2 连接前没有探活机制,应在复用前发送 PING 或快速失败后重建连接
- 无指数退避:失败后立即并发重试 3~7 次,应使用指数退避(30s → 1min → 5min → …)
- 无放弃机制:42 小时内从未成功过但持续重试,应有最大重试次数或降频机制
- 10 分钟间隔踩中 NAT 超时边界:应缩短轮询间隔(如 3~5 分钟)避免 NAT 超时,或在连接空闲时定期发送 HTTP/2 PING 保活
