Pular para o conteúdo principal
A maioria dos serviços Lerian implantáveis expõe os mesmos três endpoints HTTP operacionais —/health, /readyz e /version— em sua porta de aplicação principal. Orquestradores como o Kubernetes os usam para decidir quando um serviço está vivo, quando ele pode receber tráfego e qual build está em execução. Este é o contrato de sondas padrão, não uma garantia para todo serviço: alguns componentes —workers e sidecars— expõem apenas um subconjunto. A tabela de cobertura por serviço abaixo é a autoridade para as exceções.

Os endpoints de sonda

As grafias são exatamente /health e /readyz — não /healthz nem /livez. As três sondas são registradas na porta de aplicação principal, antes do middleware de autenticação (são sondas públicas), e são excluídas dos logs de acesso e do tracing de requisições.

O corpo da resposta de /readyz

/readyz retorna um documento JSON que descreve a prontidão geral e cada verificação de dependência.
O vocabulário de status é um conjunto fechado:
  • status geral: healthy ou unhealthy.
  • status por verificação: up, down, degraded, skipped, n/a.
/readyz retorna HTTP 200 apenas quando o status geral é healthy. Se qualquer verificação estiver down ou degraded, ele retorna HTTP 503.

Comportamento de inicialização e desligamento

As sondas são conectadas de modo que um orquestrador nunca roteie tráfego para um serviço que não consegue atendê-lo.
  • Autoverificação de inicialização. /readyz retorna 503 (“server not ready”) até que o listener esteja no ar e as dependências estejam acessíveis — para que um pod em inicialização não seja adicionado prematuramente a um load balancer, mesmo que /health já responda 200.
  • Drenagem controlada. No SIGTERM, o serviço vira /readyz para 503 durante uma janela de drenagem (cerca de 12 segundos) enquanto /health permanece 200. Os orquestradores param de rotear novo tráfego durante a janela e, depois, o processo sai assim que o trabalho em andamento se esgota. A janela é ajustável via READYZ_DRAIN_DELAY_SEC (alguns serviços usam READYZ_DRAIN_GRACE_SECONDS).
  • Modo de implantação. O DEPLOYMENT_MODE ativo é refletido no corpo de /readyz. No modo saas, uma dependência acessada sem TLS reprova a verificação de prontidão (e de boot); em byoc ela é recomendada, mas não imposta.

Prontidão multi-tenant

Quando o multi-tenancy está ativado, o serviço adiciona uma sonda de prontidão por tenant, protegida por autenticação:
Ela executa as verificações de prontidão contra as conexões resolvidas de um único tenant. O /readyz global reporta as verificações com escopo de tenant como n/a e aponta para a rota por tenant.

Cobertura por serviço

Todo serviço abaixo expõe /health (liveness) e /readyz (readiness) em sua porta principal. A tabela lista as portas padrão, a sonda multi-tenant onde ela se aplica e os dois desvios de caminho.
Readyz multi-tenant é marcado como Sim onde o serviço registra GET /readyz/tenant/{id}; ele aparece quando o multi-tenancy está ativado. Um significa que nenhuma sonda por tenant dedicada está registrada para aquele serviço.As portas são padrões de compose/.env.example e podem ser sobrescritas por implantação — veja Portas de rede padrão. Varia marca um serviço cuja porta padrão depende da configuração de implantação.