Alguém sabe se existe uma maneira prática de determinar a causa do "Aw Snap!" mensagem que aparece ocasionalmente no Google Chrome? O Chrome tem um log de erros ao qual posso me referir? Suspeito que esse problema seja causado por um loop recursivo no código que está consumindo toda a memória? Existe alguma maneira de confirmar isso?
31
Respostas:
Veja as explicações aqui: para log comum no Chrome, você pode tentar:
Use o recurso de log do Chrome :
Para habilitar o log, inicie o Chrome com os seguintes sinalizadores de linha de comando:
--enable-logging --v=1
A saída será salva no arquivo
chrome_debug.log
no diretório de dados do usuário do Chrome .O local do arquivo de log pode ser substituído pela
CHROME_LOG_FILE
variável de ambiente.Para obter uma lista completa de sinalizadores, verifique: opções de linha de comando do Google Chrome .
Ou use o console javascript :
Pressione Ctrl+ Shift+ J(Windows / Linux) ou Cmd+ Option+ J(Mac).
fonte
A conta oficial do Twitter para desenvolvedores do Chrome vinculada a um site que ajuda você a depurar as páginas "Aw snap": http://www.chromium.org/for-testers/enable-logging
A recomendação é iniciar o Chrome com estes sinalizadores:
--enable-logging --v=1
Se você fizer isso, poderá pegar um log de falha do arquivo
chrome_debug.log
no diretório de dados do usuário do Chrome (no diretório pai deDefault/
) ou na pasta de compilação binária (out\Debug
) se estiver usando uma compilação de depuração.fonte
--enable-logging --v=1
muito antes da edição da resposta aceita foi adicionada.O Aw, pressão! A página geralmente está relacionada à falha de falha na segmentação do processo , que pode estar relacionada ao bug do software . Para determinar a causa, você pode ativar o log (como sugerido em outras respostas) ou analisar o backtrace do arquivo de despejo principal (no macOS , Linux , por exemplo, Ubuntu ).
Se você não souber a causa (por exemplo, o rastreamento de pilha consiste apenas em endereços de memória), é possível criar um novo tíquete de suporte no sistema de rastreamento de bugs do Chrome (ou verificar novamente se já existe um). Durante os relatórios, você deve carregar e incluir o ID de falha acessando a
chrome://crashes/
página, para que os endereços de memória possam ser traduzidos em símbolos de depuração pelos mantenedores do Chrome.Como alternativa, você pode decodificar os despejos de memória.
Veja também: Onde está localizado o Crash Dump do Google Chrome?
Para simplificar acima, aqui estão os principais motivos pelos quais a página pode falhar:
Você encontrou o erro (no site ou no próprio navegador da web).
Bug do site
Exemplo: a VM JavaScript atingiu a memória máxima alocada (falha de falta de memória).
Para verificar isso, execute o DevTools e verifique a guia Memória . Se for esse o caso, o código deve pausar automaticamente imediatamente antes da possível falha de falta de memória (por exemplo, edição 810015 ). Nesse caso, relate o problema ao proprietário do site ou crie um perfil do código JS para encontrar o bug.
Bug do navegador
Você atingiu o máximo de arquivos abertos no seu sistema (consulte: # 787381 ).
No Linux / Unix / macOS, para verificar isso, execute:
e verifique se
kern.num_files
atingiu o limite dekern.maxfiles
.Se for esse o caso, aumente o limite executando os seguintes comandos:
Você pode ter algum malware / vírus que altera os arquivos do Chrome causando a falha.
memtest
).Mac OS
Para exibir logs do Chrome, execute:
ou executando o aplicativo Console , onde você também pode verificar se há despejos de memória (ou fazer check-in
~/Library/Logs/DiagnosticReports
). Consulte: Depure o erro "Aw, Snap!" No ChromeDepuração
Se nenhuma das opções acima ajudar, considere compilar o Chrome a partir da fonte (leva muito tempo) e execute diretamente a partir do Terminal. Depois disso, cada erro "Aw, Snap!" Deve ser seguido pelo rastreamento completo da pilha, incluindo funções e linhas no arquivo de código-fonte onde ocorreu.
fonte