O que é o formato de ficheiro CRASH?
Um arquivo .crash é um relatório de falha da Apple gerado automaticamente quando um aplicativo ou processo do sistema termina inesperadamente no macOS, iOS, iPadOS, tvOS ou watchOS. O relatório captura o estado do processo no momento da falha, fornecendo aos desenvolvedores as informações necessárias para diagnosticar o erro subjacente.
Arquivos .crash mais antigos (até o macOS 11 Big Sur) são texto simples em UTF-8. Eles começam com um cabeçalho estruturado que registra o identificador do incidente (um UUID), modelo de hardware, versão do SO, nome do processo, tipo de exceção e motivo do encerramento. Abaixo do cabeçalho estão os rastreamentos de pilha (stack backtraces) por thread - listas de endereços de chamadas de função - seguidos por uma tabela de todas as imagens binárias (frameworks e bibliotecas) carregadas no processo no momento da falha, com seus endereços de carga de memória e UUIDs de compilação.
Desde o macOS 12 Monterey (2021), a Apple mudou o contêiner subjacente para o formato .ips (Incident Progress Stream), um objeto JSON. Os arquivos ainda aparecem com a extensão .crash no Finder e no Console.app para compatibilidade retroativa, mas seu conteúdo agora é um JSON estruturado com chaves como cpuType, osVersion, threads e binaryImages.
Os rastreamentos de pilha em relatórios não simbolizados mostram endereços de memória hexadecimais brutos. Converter esses endereços em nomes de funções legíveis requer o pacote de símbolos de depuração .dSYM correspondente para cada binário listado no relatório. O Xcode Organizer simboliza relatórios de falhas do iOS e tvOS automaticamente quando o .dSYM correto está disponível.
No macOS, os relatórios de falhas são armazenados em ~/Library/Logs/DiagnosticReports/ para processos de usuário e /Library/Logs/DiagnosticReports/ para processos do sistema. Os logs de falhas do iOS são recuperados via Xcode Organizer ou pelo diretório ~/Library/Logs/CrashReporter/MobileDevice/.
Segurança e proteção
RISCO: LOWArquivos de relatório de falha não contêm código executável e não representam risco de segurança por si sós. Eles podem conter dados sensíveis à privacidade: nome de usuário (em caminhos de arquivo), modelo do dispositivo, nomes de aplicativos e, ocasionalmente, strings de argumentos ou trechos de memória. O processo de envio de diagnósticos da Apple solicita o consentimento do usuário antes de enviar relatórios de falhas para a Apple.
Detalhes do formato
em resumo- Relatórios de Erros do Windows / Referência Genérica de Crash Dump - Alguns aplicativos de terceiros (ex: Unity, Electron) no Windows também salvam resumos de falhas em texto simples com a extensão .crash, distintos do formato da Apple.
Programas que abrem arquivos CRASH
Detalhes técnicos
especificação profunda| Formato legado | Texto simples UTF-8 (macOS até o Big Sur; iOS até o iOS 15) |
| Formato moderno | Objeto JSON (contêiner .ips renomeado para .crash por compatibilidade - macOS 12 Monterey+) |
| Assinatura de arquivo legada | Cabeçalho Incident Identifier: <UUID> no início do arquivo |
| Assinatura de arquivo moderna | { no deslocamento de byte 0 (objeto JSON) |
| Campos principais do cabeçalho | Tipo/códigos de exceção, motivo do encerramento, versão do SO, modelo de hardware, nome do processo e PID |
| Rastreamentos de pilha | Backtrace por thread de endereços de chamada (nomes de funções simbolizados ou hex bruto) |
| Lista de imagens binárias | Endereços de carga e UUIDs de todos os frameworks e bibliotecas carregados no momento da falha |
| Simbolização | Endereços hexadecimais brutos convertidos em nomes de funções usando pacotes de depuração .dSYM correspondentes |
| Caminho de armazenamento no macOS | ~/Library/Logs/DiagnosticReports/ (processos de usuário) e /Library/Logs/DiagnosticReports/ (sistema) |
| Recuperação no iOS | Xcode Organizer (aba Crashes) ou ~/Library/Logs/CrashReporter/MobileDevice/ |
| Cobertura de plataforma | macOS, iOS, iPadOS, tvOS, watchOS |
| Tamanho de arquivo típico | 10 KB - 500 KB |
| Lançado | Mac OS X 10.0 (2001); iOS crash reports since iPhone OS 2.0 (2008) |
| Versão mais recente | JSON-based format (macOS 12 Monterey+, 2021) |
| Especificação | developer.apple.com |
Conversões de CRASH
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos CRASH.