Skip to main content
Todos os métodos desta página ficam em c.Apps e recebem o ctx primeiro e depois o id da aplicação. Um appID também pode ser o id composto <appId>-<workspaceId> de uma aplicação compartilhada por meio de um workspace. Cada trecho abaixo roda sozinho dentro deste programa: cole um de cada vez em main e execute o goimports (veja Executando os exemplos).
Para listar suas aplicações, use c.Account.Me: seu slice Applications contém todas as aplicações que a chave pode ver.

Obtendo uma aplicação

Status

Status(ctx, appID) retorna o estado ao vivo com valores formatados:
StatusRaw(ctx, appID) retorna números em vez disso (CPU em %, RAM em MB, Storage em bytes, Network.Total e Network.Now como pares de bytes [in, out]):
Uptime é um timestamp (quando a aplicação iniciou), não uma duração. Use time.Since(time.UnixMilli(*status.Uptime)) para saber há quanto tempo ela está no ar.

Status de todas as aplicações

StatusAll(ctx, workspaceID) retorna um resumo por aplicação que a chave pode ver, em uma única requisição. Passe "" para todas as aplicações, ou o id de um workspace para ver só as aplicações desse workspace. CPU e RAM só são preenchidos (não "") enquanto a aplicação está rodando.

Iniciar, parar e reiniciar

O servidor mantém essas chamadas abertas até o container agir, então, sem um prazo no ctx, elas esperam pelo menos 2 minutos antes de expirar. Quando a plataforma recusa a ação, a chamada retorna um *APIError com status 409, um Code e uma Message vazia: “Já iniciada” e “já parada” também são erros. Se para você eles significam sucesso, trate-os:

Logs

Logs(ctx, appID) retorna a saída mais recente do console como uma única string ("" quando não há nenhuma).
Para um stream de logs ao vivo, use Tempo real.

Métricas

Metrics(ctx, appID) retorna as últimas 24 horas, um ponto a cada 5 minutos, do mais recente para o mais antigo.

Domínios e load balancers

Domains(ctx) lista os hostnames padrão e personalizados de todas as aplicações. LoadBalancers(ctx) lista os domínios compartilhados por várias aplicações, com o limite do seu plano.
Para configurar um domínio personalizado, veja Rede.

Excluindo uma aplicação

A exclusão é permanente. Crie um snapshot antes, caso você possa precisar dos arquivos novamente.

Próximos passos

Commit e upload

Crie uma aplicação a partir de um zip ou envie arquivos para uma existente.

Referência da API de aplicações

Os endpoints REST por trás destes métodos.

Aplicações pela CLI

As mesmas ações pelo terminal.