Skip to main content
本页的所有方法都位于 c.Apps 上,第一个参数为 ctx,其次是应用 ID。appID 也可以是通过 workspace 共享的应用的组合 ID <appId>-<workspaceId>。 下面的每个代码片段都可以在这个程序中单独运行:每次将一个片段粘贴到 main 中,然后运行 goimports(参见运行示例)。
要列出你的应用,请使用 c.Account.Me:它的 Applications 切片包含该密钥可见的所有应用。

获取应用

状态

Status(ctx, appID) 返回带有格式化值的实时状态:
StatusRaw(ctx, appID) 则返回数字(CPU 为百分比,RAM 为 MB,Storage 为字节,Network.Total 和 Network.Now 为 [in, out] 字节对):
Uptime 是一个时间戳(应用启动的时刻),而不是持续时长。使用 time.Since(time.UnixMilli(*status.Uptime)) 计算它已运行了多久。

所有应用的状态

StatusAll(ctx, workspaceID) 在单个请求中为该密钥可见的每个应用返回一份摘要。传入 "" 表示所有应用,或者传入某个 workspace 的 ID,只获取该 workspace 的应用。CPU 和 RAM 仅在应用运行时才有值(不为 "")。

启动、停止和重启

服务器会保持这些调用的连接直到容器执行完动作,因此在 ctx 没有截止时间的情况下,它们至少等待 2 分钟才会超时。当平台拒绝该操作时,调用会返回 *APIError,状态为 409,带有 Code 和空的 Message: “已启动”和“已停止”同样是错误。如果对你而言它们意味着成功,请自行处理:

日志

Logs(ctx, appID) 以单个字符串返回最新的控制台输出(没有输出时为 "")。
如需实时日志流,请使用实时。

指标

Metrics(ctx, appID) 返回最近 24 小时的数据,每 5 分钟一个数据点,最新的在前。

域名和负载均衡器

Domains(ctx) 列出每个应用的默认主机名和自定义主机名。LoadBalancers(ctx) 列出由多个应用共享的域名,以及你的套餐限额。
要设置自定义域名,请参见网络。

删除应用

删除是永久性的。如果你可能还需要这些文件,请先创建一个 snapshot。

后续步骤

Commit 与上传

用 zip 创建应用,或向应用发送文件。

应用 API 参考

这些方法背后的 REST 端点。

用 CLI 管理应用

在终端中完成同样的操作。