Vercel adiciona Cache Reason aos runtime logs
Chegou um recurso que resolve aquela dor clássica de debugar cache em produção: você olha o log, vê STALE ou MISS e fica adivinhando o motivo. A Vercel lançou o Cache Reason nos runtime logs, um campo que explica exatamente por que uma requisição não bateu no cache fresco.
Na prática, cada entrada de log agora vem com o status de cache e, ao lado, a razão. O mapeamento oficial é este:
- MISS: cache frio, requisição colapsada ou erro
- BYPASS: Draft Mode, Prerender Bypass ou crawler
- STALE: revalidação por tempo, invalidação por tag ou erro de revalidação
- REVALIDATED: exclusão por tag
O recurso cobre qualquer resposta que a CDN consegue cachear: ISR, Partial Prerendering e funções que setam Cache-Control com stale-while-revalidate entram nessa. Já rotas renderizadas dinamicamente em toda chamada não geram razão, porque nem passam pela lógica de cache.
No dashboard, a aba Logs mostra status e razão lado a lado ao abrir uma requisição, com link direto pra referência de Cache Status and Reasons. Mas quem vive de terminal vai gostar mais ainda: o campo cache_reason está disponível em vercel logs, vercel metrics e no skill cdn-caching do plugin oficial da Vercel.
Pra inspecionar a razão de uma requisição específica:
vercel logs –request-id ID –expand –json –project PROJ –scope TEAM
Pra quantificar quantas vezes cada razão aparece no tráfego:
vercel metrics vercel.request.count –group-by cache_reason –since TEMPO –project PROJ –scope TEAM
E pra debugar caching em escala sem reinventar a roda:
npx skills add https://github.com/vercel/vercel-plugin –skill cdn-caching
Métrica sem contexto é chute. Com Cache Reason, pelo menos você sabe onde apertar.
Isso muda a forma de investigar hit rate. Antes o status vinha sem contexto e você ficava correlacionando manualmente headers, timestamps e config de revalidação na mão. Agora o próprio log entrega a causa, o que corta boa parte do trabalho de tentativa e erro em produção.
Pra quem mantém app Next.js na Vercel com ISR ou Partial Prerendering, vale abrir os logs hoje e olhar a distribuição de razões antes de ajustar TTL no escuro.
Fonte: https://vercel.com/changelog/runtime-logs-now-show-cache-reasons
