Resposta rápida
Se uma automação do Cloudflare Browser Run falhou, ative recording: true ao iniciar uma nova sessão, reproduza o fluxo e encerre o navegador. Depois abra Browser Run e Runs no painel da Cloudflare. A gravação permite rever a sessão e inspecionar console, requisições de rede e o DOM final sem precisar provocar a falha novamente.
A gravação não é retroativa e não aparece enquanto a sessão continua aberta. Ela precisa ser habilitada na aquisição inicial, é finalizada somente quando a sessão termina e pode levar um breve período para ficar disponível. Antes de mudar o código, consulte o Cloudflare Status para separar uma falha da plataforma de um problema do fluxo.
O que mudou em 18 de setembro
A Cloudflare adicionou um painel Inspect às gravações do Browser Run em 18 de setembro de 2026. A aba Logs pesquisa a saída do console e filtra mensagens por nível. A aba Network mostra método, status, cabeçalhos, payload, resposta e tempos de cada requisição, além de permitir baixar um arquivo HAR.
A aba DOM exibe a estrutura expansível da página ao fim da gravação e permite copiar o HTML reconstruído. Em sessões com várias abas, o conteúdo do painel acompanha a aba selecionada no visualizador. A gravação continua baseada em eventos estruturados do rrweb, não em um vídeo de pixels.
Como ativar a gravação corretamente
Em Puppeteer ou Playwright, passe recording: true no objeto usado para iniciar o navegador. Guarde browser.sessionId() antes de fechar a sessão se também pretende consultar a gravação pela API. Em conexões CDP, inclusive clientes MCP, acrescente recording=true à URL WebSocket desde a primeira conexão.
Não tente ativar a opção ao reconectar a uma sessão existente. O Browser Run fixa esse comportamento na aquisição inicial. A gravação funciona com Browser Sessions iniciadas por launch() e pelo endpoint CDP, mas não está disponível para Quick Actions.
- Crie uma sessão nova com recording: true ou recording=true no endpoint CDP.
- Registre o session ID antes de encerrar o navegador.
- Execute somente o fluxo necessário para reproduzir a falha.
- Feche o navegador explicitamente ou aguarde o encerramento da sessão.
- Abra Browser Run, Runs e selecione o ícone de gravação ao lado da sessão.
Por que a gravação não aparece
A gravação é finalizada quando o navegador fecha, quando o tempo ocioso expira ou quando o Worker termina. Enquanto a sessão continua aberta, o visualizador e os endpoints ainda não têm o resultado completo. Mesmo depois do encerramento, a API pode responder 404 por um curto período enquanto a gravação é processada.
Sessões com menos de um segundo não produzem uma gravação visualizável. Confirme também que recording foi habilitado na primeira aquisição, que a tarefa usou uma Browser Session e que você está consultando o account e o session ID corretos.
- Confirme que a sessão terminou e não está apenas ociosa com keep_alive ativo.
- Verifique se a duração passou de um segundo.
- Confira account ID, session ID e autorização usados na consulta.
- Se a API retornar 404 logo após o encerramento, aguarde a finalização e tente novamente com intervalo controlado.
- Consulte o status oficial se gravações de sessões diferentes deixarem de aparecer sem mudança no código.
Como encontrar a causa nos Logs, Network e DOM
Comece pelo ponto exato em que a execução divergiu. Nos Logs, procure erros e avisos próximos ao horário da falha. Em Network, confira requisições canceladas, códigos HTTP inesperados, redirecionamentos e a parte do waterfall em que o tempo aumentou. No DOM, confirme se o elemento esperado realmente existia ao final da execução.
Os três painéis precisam ser lidos em conjunto. Um seletor ausente pode ser consequência de uma API que retornou erro, de um redirecionamento para login ou de um recurso bloqueado. Um DOM final correto não prova que todos os cliques anteriores ocorreram, e uma resposta HTTP 200 não garante que o conteúdo retornado era o esperado.
- Marque o último passo concluído com sucesso na linha do tempo.
- Filtre o console por erros e registre a mensagem completa.
- Compare a requisição relacionada pelo horário, status, resposta e duração.
- Verifique o DOM da aba correta e procure o elemento ou estado esperado.
- Repita a sessão uma vez com os mesmos dados antes de alterar seletores ou aumentar timeouts.
Como exportar a rede em JSON ou HAR
O endpoint de gravação devolve eventos separados por target. Cada target normalmente corresponde a uma aba do navegador. Para consultar a atividade de rede, use um target retornado em result.events. A resposta padrão é JSON; ao adicionar format=har, o endpoint entrega um documento HTTP Archive 1.2.
O HAR ajuda a comparar execuções locais e remotas, revisar redirecionamentos e visualizar o waterfall em ferramentas compatíveis. Ele não substitui a gravação do DOM nem o console. Exporte os três tipos de evidência quando a falha depender da combinação entre página, JavaScript e API.
Proteja dados antes de compartilhar a gravação
A aba Network pode conter cabeçalhos, payloads e respostas. O DOM reconstruído também pode revelar conteúdo exibido durante a sessão. Por isso, trate a gravação e o HAR como evidência potencialmente sensível e não os publique em issues, chats ou repositórios antes de revisar o conteúdo.
Campos de entrada são mascarados por padrão na reprodução do rrweb, mas isso não garante que tokens, cookies, dados de conta ou respostas de API estejam ausentes dos outros painéis. Remova segredos, reduza a sessão ao fluxo necessário e compartilhe somente com quem precisa investigar o erro.
Limites que podem parecer falha
A gravação de sessão está em beta, é opt-in, fica retida por 30 dias e aceita sessões de até duas horas. Canvas aparece como espaço vazio, iframes de outra origem não têm o conteúdo gravado, vídeo e áudio não registram a reprodução e WebGL não é capturado. Páginas com muitas mutações podem gerar um volume alto de eventos.
Essas limitações explicam por que a reprodução pode parecer incompleta mesmo quando a automação executou. Para mídia, canvas, WebGL ou iframe externo, combine a gravação com capturas de tela, logs da aplicação e a resposta de rede disponível. Não conclua que o elemento estava vazio apenas porque o rrweb não conseguiu reconstruí-lo.
Próxima ação útil
Este guia foi verificado em 19 de setembro de 2026. Como o recurso está em beta, endpoints, limites e interface podem mudar. A gravação explica o que o navegador observou, mas não identifica sozinha uma causa em DNS, TLS, aplicação de origem, autenticação ou política de rede.
Crie uma sessão curta de homologação com recording ativado, reproduza uma única falha e encerre o navegador. Revise primeiro Logs, depois Network e por último o DOM da aba correta. Se houver 403 com cabeçalhos de guardrail, use o guia de domínios permitidos. Se várias sessões falharem, confira o status oficial e execute os testes de WebSocket e diagnóstico web antes de aumentar timeouts.
Faça o próximo teste
Fontes consultadas
Os links abaixo servem para conferir conceitos, orientações oficiais e o critério editorial usado neste conteúdo.
- Inspect logs, network requests, and DOM in Session RecordingsCloudflare Changelog
- Session recordingCloudflare Browser Run Docs
- Browser Run overviewCloudflare Docs
- Browser Run limitsCloudflare Docs
- Cloudflare StatusCloudflare
