Kibotos

错误

本页帮助你弄清一个错误的含义和下一步该做什么。程序可以按收到的失败原因查,也可以按看到的现象查。链接的页面有每种情况的完整说明。

失败原因

多数 API 错误带有 ErrorDetail,首先看其中的 reason。retryable 为 true 时,重试可能成功:错误详情带 command_settled 时换新的幂等键,否则用同一个。没有 ErrorDetail 的错误只有 Connect 错误码与消息。见错误格式。

reason含义处理
INVALID_REQUEST请求格式不对或超过限制修改请求,见默认值与限制
NOT_FOUND对象或路径不存在核对 ID 或路径。已删除的 Workspace 仍能按 ID 读取
CONFLICT对象的状态或版本不允许这个请求,或者同一个幂等键用了不同的输入重新读取对象,按当前状态决定,见版本校验
RESOURCE_EXHAUSTED没有 node 放得下,或者达到了磁盘空间、流数量这类上限看 retryable。容量不足时稍后重试,否则释放资源或缩小请求
CAPABILITY_UNAVAILABLEguest、node 或部署缺少这项操作的条件,例如较新的 guest 或已配置的指标存储看 message。guest 较旧时重启 Workspace,其他情况问部署方
UNSUPPORTED这个操作在此处不适用,例如调整没有终端的进程的大小,或者对方缺少这个功能看 message。功能缺失时见先查询能力
UNAUTHENTICATED身份或凭证未被接受确认证书没有过期,见认证
PERMISSION_DENIED调用方无权这样做,或者 guest 拒绝了文件或进程操作核对身份、凭证的权限范围与 guest 账号
SESSION_EXPIRED会话凭证已过期用新的幂等键申请新凭证,Go SDK 会替你完成,见缓存与续期凭证
SESSION_REVOKED凭证被撤销,或者 Workspace 已停止或已删除查看 Workspace 的状态,再申请新凭证
UNAVAILABLE依赖不可用、命令仍在执行,或者 Workspace 的这次执行已结束retryable 为 true 时重发:错误详情带 command_settled 时换新的幂等键,否则用同一个。为 false 时读取 Workspace 的状态
TIMED_OUT操作没有按时完成重试前先读取对象的状态与命令的结果
CANCELLED另一条命令取代了它(例如强制停止或删除),或者请求被取消读取对象的状态,仍有需要时重发请求
PROTOCOL_INCOMPATIBLEnode 或 guest 给出了不符合契约的回答把幂等键告诉部署方。版本不一致是可能的原因之一,见重装与升级
VOLUME_LOSTWorkspace 绑定的 Volume 处于 LOST,不可重试绑定别的 Volume 或删除 Workspace,见保证与边界
INTERNAL服务端的意外错误retryable 为 true 时重试,否则把幂等键告诉部署方

Workspace 状态

状态处理
FAILED先强制停止,再启动,见从 FAILED 恢复
UNKNOWN等系统确认结果,或用原来的幂等键重发,见各状态下能做的操作
AVAILABLE,但请求超时guest 可能卡住了,见 guest 回应情况

常见现象

现象可能的原因详见
spec.template and spec.resources are required原生 API 创建时没有传 Resources,只有 kibo 会补默认值创建 Workspace
exactly one valid pipe or PTY mode is required原生 API 的 Start 没有传 Mode命令与终端
managed identity directory … must not grant group or other access身份目录对其他用户开放连接 ctrl
guest 里出现 Could not resolve host 或 bad addressWorkspace 默认不能访问网络网络概览
连接立即失败,或者出现 Egress、Resolver 故障网络策略,或者你的代理、DNS 上游网络排查
以默认账号发出的请求返回 CONFLICT,root 却正常Template 声明的账号在 guest 里被删除默认账号不可用
进程几乎没有进展Workspace 内存不足资源与运行状况
写文件返回 413 或 resource_exhausted文件超过 1 GiB,或者磁盘已满文件
kibo 以自己的退出码退出见分类表kibo 退出码

E2B SDK 错误

看到的含义详见
501,或 SandboxError: 501: unimplemented: …网关不提供这项能力,消息里写明了名称不支持的能力
明明存在的 sandbox 返回 404网关没有实现这个接口返回的错误
404 template catalog record not found部署里没有这个名称的 Template从 E2B 迁移
创建或 connect 返回 502sandbox 在 90 秒内没有运行起来,之后仍可能启动;或者调用在 Kibotos 里失败。用同一个 Idempotency-Key 重试创建 sandbox
查询与暂停返回 502sandbox 已失败意外的暂停、重启与失败
503 与 resource_exhausted没有 node 放得下容量不足
connect 返回 409sandbox 已失败,不能按原样启动恢复
fetch failed证书不受信任,或者域名到不了网关快速开始
CommandExitError命令以非零退出码结束命令与终端

按主题排查

下一步

本页内容