Voce acabou de fazer deploy do seu app Next.js no Vercel. Seu tech lead diz que voce precisa de monitoramento. Voce pesquisa "Next.js APM" e encontra o guia de setup do Datadog.

Passo 1: Instalar dd-trace. Passo 2: Instalar o Datadog Agent no seu servidor. Passo 3: Configurar datadog.yaml com 47 opcoes. Passo 4: Configurar trace collection. Passo 5: Configurar log forwarding. Passo 6: Perceber que o Datadog Agent precisa de um servidor — e voce esta no Vercel.

Voce nao tem um servidor. Voce tem funcoes serverless. O agente nao tem onde viver.

O que os agentes APM realmente fazem (e custam)

Um agente APM e um processo separado que roda ao lado da sua aplicacao. O agente do Datadog, o daemon do New Relic, o OneAgent da Dynatrace — todos seguem o mesmo padrao:

  1. Um processo daemon roda na sua maquina (200-500MB de RAM)
  2. Uma biblioteca especifica da linguagem instrumenta seu codigo
  3. A biblioteca envia dados de tracing para o daemon local
  4. O daemon agrupa, comprime e reenvia os dados para a nuvem do vendor

Essa arquitetura fazia sentido quando todos rodavam em instancias EC2 ou pods Kubernetes. Ela quebra em tres cenarios que developers Next.js enfrentam constantemente:

Problema 1: Serverless nao tem maquina host

No Vercel, Netlify ou AWS Lambda, nao existe servidor persistente. Cada invocacao de API route e uma funcao isolada. O daemon do agente nao tem onde rodar.

Problema 2: Cold starts pioram

Bibliotecas APM precisam inicializar quando sua funcao inicia. Com dd-trace, isso adiciona ~245ms a cada cold start — 80% a mais de tempo de inicializacao em uma funcao que normalmente inicia em 300ms.

Problema 3: Complexidade de configuracao

Um setup tipico do Datadog para Next.js requer 10+ variaveis de ambiente. Erre uma e voce tem dados parciais. Configure uma errado e recebe uma fatura de $2,000 por excesso de traces.

O imposto do agente: comparacao

CustoCom Agente (Datadog/New Relic)Sem Agente (SDK leve)
Overhead de memoria300-500MB (daemon) + 50-100MB (lib)< 5MB
Penalidade de cold start+200-800ms+5-15ms
Variaveis de ambiente10-15 necessarias1 (API key)
Tempo de setup2-4 horas5 minutos
Custo mensal (equipe pequena)$71-300+/host/mes$0-29/mes
Funciona no Vercel serverlessParcialmenteCompletamente

Como e o monitoramento sem agentes

Em vez de daemon + biblioteca + pipeline de collectors, voce tem um unico SDK leve que roda dentro do processo da sua aplicacao:

// instrumentation.ts
import { initWatch } from '@nurbak/watch'

export function register() {
  initWatch({
apiKey: process.env.NURBAK_WATCH_KEY,
  })
}

Sem daemon, sem arquivo de config, sem 10 variaveis de ambiente. O SDK:

  1. Inicializa em menos de 15ms (vs 200-800ms para agentes APM)
  2. Usa menos de 5MB de memoria
  3. Auto-descobre cada API route do seu app Next.js
  4. Agrupa e envia metricas de forma assincrona (zero impacto no response time)
  5. Sobrevive cold starts serverless porque faz parte da sua funcao

Como funciona por dentro

O SDK usa o hook instrumentation.ts do Next.js 13.2+ para se conectar ao lifecycle de requests. Usa diagnostics_channel do Node.js — sem monkey-patching, sem reescrever modulos, sem conflitos de versao.

As metricas sao armazenadas em buffer na memoria e enviadas em batches a cada 10 segundos. Se o endpoint de monitoramento estiver fora do ar, seu app continua funcionando normalmente.

O que voce recebe sem o agente

Com Nurbak Watch, cada API route e rastreado automaticamente:

  • Percentis de latencia — P50, P95, P99 por endpoint
  • Taxas de erro — porcentagem de 4xx e 5xx por rota
  • Throughput — requests por minuto
  • Tracking de cold starts — frequencia e impacto na latencia
  • Alertas instantaneos — Slack, email ou WhatsApp em menos de 10 segundos

Quando voce realmente precisa de um agente

Para ser honesto, agentes nem sempre estao errados. Voce precisa de um agente APM completo se:

  • Roda em Kubernetes com 50+ microservicos e precisa de distributed tracing
  • Precisa de profiling profundo de CPU e memoria
  • Compliance exige (SOC 2, HIPAA)
  • Tem uma equipe de plataforma dedicada a observabilidade

Se nada disso se aplica — se voce e uma equipe de 1 a 15 developers fazendo um SaaS em Next.js — voce nao precisa de um agente.

Migracao: remover seu agente em 10 minutos

# Remove o agente
npm uninstall dd-trace   # ou newrelic, ou @dynatrace/oneagent

# Instala Nurbak Watch
npm install @nurbak/watch

# Adiciona 5 linhas ao instrumentation.ts
# Adiciona 1 variavel de ambiente: NURBAK_WATCH_KEY
# Deploy

Seus cold starts acabaram de melhorar 200-800ms. Seu uso de memoria diminuiu. E voce ainda tem visibilidade completa de cada API route.

Comece gratis

Nurbak Watch esta em beta e e completamente gratis durante o lancamento. Sem cartao de credito. Sem agente. Sem daemon. Sem arquivo de config de 47 opcoes.

Um npm install. Cinco linhas de codigo. Cada API route monitorado.