Repository navigation
经常出现502 #45
Copy link
Copy link
Open
Description
部署的是最新的代码,但是经常出现502的错误,
bad response status code 502, message: Upstream error: fetch failed, body: {"error":{"message":"Upstream error: fetch failed","type":"proxy_error","input_tokens":0},"retry_after":10}
本轮运行失败OpenAI API error (502): {"message":"Upstream error: fetch failed","type":"proxy_error","param":"","code":null}
日志是这个
[2026-09-16T00:37:36.423Z] [info] Fingerprint generated for key {"keyPrefix":"..."}
[2026-09-16T00:37:37.292Z] [warn] Lifecycle event error {"error":"fetch failed"}
[2026-09-16T00:37:37.293Z] [warn] Fingerprint record error {"error":"fetch failed"}
[2026-09-16T00:37:37.293Z] [info] Fingerprint/lifecycle next refresh {"nextIn":"..."}
[2026-09-16T00:37:37.293Z] [info] Session created {"sessionId":"...","storeSize":1}
[2026-09-16T00:37:41.495Z] [error] Responses handler error {"message":"fetch failed"}
[2026-09-16T00:37:42.216Z] [error] Responses handler error {"message":"fetch failed"}
[2026-09-16T00:37:43.555Z] [error] Responses handler error {"message":"fetch failed"}
[2026-09-16T00:37:45.881Z] [error] Responses handler error {"message":"fetch failed"}
[2026-09-16T00:37:49.926Z] [error] Responses handler error {"message":"fetch failed"}
[2026-09-16T00:37:54.514Z] [error] Upstream error {"message":"fetch failed"}
[2026-09-16T00:37:57.948Z] [error] Responses handler error {"message":"fetch failed"}
[2026-09-16T00:37:58.033Z] [error] Upstream error {"message":"fetch failed"}
[2026-09-16T00:38:09.121Z] [error] Upstream error {"message":"fetch failed"}
[2026-09-16T00:38:30.440Z] [error] Upstream error {"message":"fetch failed"}
[2026-09-16T00:38:32.424Z] [error] Upstream error {"message":"fetch failed"}
[2026-09-16T00:38:33.241Z] [error] Upstream error {"message":"fetch failed"}
[2026-09-16T00:38:34.178Z] [error] Upstream error {"message":"fetch failed"}
[2026-09-16T00:38:34.820Z] [error] Upstream error {"message":"fetch failed"}
[2026-09-16T00:38:35.473Z] [error] Upstream error {"message":"fetch failed"}
[2026-09-16T00:38:36.143Z] [error] Upstream error {"message":"fetch failed"}
[2026-09-16T00:38:36.754Z] [error] Upstream error {"message":"fetch failed"}
[2026-09-16T00:38:37.542Z] [error] Upstream error {"message":"fetch failed"}
[2026-09-16T00:38:38.479Z] [error] Upstream error {"message":"fetch failed"}
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
MAXeaglet commentedon Sep 16, 2026
会不会是网络问题,有成功过吗
hsiangleev commentedon Sep 16, 2026
成功过,一个小时大概会出现几次这个错误,但是等一会就好了。
不确定是不是网络问题,我先测试一下吧。
maple323 commentedon Sep 16, 2026
我也出现了,是什么原因呢,是并发太高了吗,我这样十几分钟了,重启一下又好了
X-233 commentedon Sep 16, 2026
重启就好了,到时候,让AI排除吧
BaiFeng666 commentedon Sep 17, 2026
+1
Cedric9352 commentedon Sep 18, 2026
+1,我让codex分析过,说是上游返回了terminated
X-233 commentedon Sep 18, 2026
我已经解决了,就是代理问题,直链失败率很高的,我去测试了一下通过率只有 20%,代理通过率100%。设置代理就行了
X-233 commentedon Sep 18, 2026
使用代理
MAXeaglet commentedon Sep 18, 2026
顺着「设置代理就行了」这条补充:上游代理支持已经合进 master 了(#32 →
3198dd8,另有一个跟进修复cce214d)。release分支构建,而 release 目前还没带上这个功能,需要等发版;想立刻用可以直接跑 master(npm start)或自行 build。第一步:先确认「设了代理却没效果」这个坑
Node 原生
fetch不读HTTPS_PROXY/HTTP_PROXY。在跑 ccproxy 的机器上执行:HTTPS_PROXY=http://127.0.0.1:9 node -e "fetch('https://api.commandcode.ai/').then(r=>console.log('连上了 HTTP',r.status)).catch(e=>console.log('失败',e.message))"NODE_USE_ENV_PROXY=1才生效。之前"设了代理但没效果"多半就是这个原因。第二步:二选一
1)用内置选项(Node 18+ 即可,不需要
NODE_USE_ENV_PROXY,也不需要透明代理)CC_UPSTREAM_PROXY=http://127.0.0.1:7890 npm start # 或 config.json: { "upstreamProxy": "http://127.0.0.1:7890" }只作用于发往 CC 的请求(
/alpha/generate、fingerprint/record、lifecycle-events、/provider/v1/models),不影响本地监听与/health;实现是零依赖的 CONNECT 隧道,TLS 端到端,代理只转发裸字节、不解密;指纹与 lifecycle 预请求同样走代理(否则同一账号会从两个 IP 注册)。2)宿主机层透明代理(Clash TUN / iptables)
官方镜像是
node:22-alpine,env 变量对它无效,但透明代理一律生效 —— 这是目前镜像用户立刻可用的做法。如果换了出口仍然出现 502
麻烦贴两个东西:客户端完整错误 + 代理日志里对应那一行(
Stream error/Upstream error/CC stream error)。这类失败目前看到两种形态,都指向出口链路:
fetch failed(连接建立阶段被断)与terminated(响应读到一半被断)。我们正在把 undici 的causecode(UND_ERR_SOCKET/ECONNRESET/EAI_AGAIN…)打进日志 —— 那一行出来就能直接判定是 DNS、连接被拒、还是被中途掐断,不用再猜。MAXeaglet commentedon Sep 18, 2026
补一条更新:已经发版了,上面「需要等发版」那句作废。
release分支已更新到与 master 相同的提交(cce214d),GHCR 镜像重新构建完成:release与:latest现在指向同一 digest(amd64sha256:0c8c5ea8…),构建时间 2026-09-18T08:28:51Zapp/proxy.mjs与 master 逐字节一致(sha2562ebb3f0c…),已包含upstreamProxy/CC_UPSTREAM_PROXY127.0.0.1不是宿主机。Linux 上用172.17.0.1(docker 网桥网关),或加--network host后再用127.0.0.1。配置生效后启动横幅里会显示
"upstreamProxy":"127.0.0.1:7890"(只打 host:port,带账号密码也不会写进口令)。zhyx1996 commentedon Sep 20, 2026
能不能考虑加到配置文件里?