Começar
Aparência

Vale na hora e fica lembrada neste navegador.

Decisões

ORG-0021 — Observabilidade

Contexto

A plataforma coleta logs, métricas e traces de todas as aplicações com a mesma pilha. Para isso, cada aplicação precisa falar o mesmo contrato, seja qual for a linguagem, sem depender de um agent externo.

Decisão

  1. Log em JSON no stdout, uma linha por evento, com traceId.
  2. Métricas Prometheus numa porta interna, não publicada.
  3. Traces OTLP para o Alloy da plataforma; export não bloqueante (coletor fora do ar não derruba requisição nem boot).
  4. /up responde sem autenticação.
  5. service.name = nome da aplicação; deployment.environment = local ou production.
  6. As bibliotecas que implementam o contrato ficam numa ADR da stack (a ADR-0009 pré-escrita).

Alternativas consideradas

AlternativaPor que não
Cada stack escolhe formato e destinoPor que não: a plataforma teria uma integração por stack
Agent externo de instrumentaçãoPor que não: mais uma peça para versionar e operar em cada imagem

Consequências

  • Uma aplicação nova aparece nos painéis da plataforma sem configuração no toolbox.
  • O contrato tem teste de integração em toda aplicação (ORG-0015).

Mais

O detalhe está na documentação da arquitetura.