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) 列出由多个应用共享的域名,以及你的套餐限额。
删除应用
后续步骤
Commit 与上传
用 zip 创建应用,或向应用发送文件。
应用 API 参考
这些方法背后的 REST 端点。
用 CLI 管理应用
在终端中完成同样的操作。

