Para o agente versão 4 ou superior, a New Relic produz relatórios de falhas para seu aplicativo móvel. Quando um aplicativo iOS ou tvOS falha, o sistema operacional cria um relatório de falha e o armazena no dispositivo. A New Relic carrega este relatório na próxima vez que o aplicativo for lançado.
Usando este relatório e quaisquer arquivos dSYM relevantes, o relatório de falha inclui o stack trace completo com informações legíveis por humanos. Você pode então log no New Relic e ver cada falha, incluindo o método e a linha onde ocorreu a falha, além de detalhes do dispositivo e do ambiente.
Arquivos dSYM
Quando você cria uma versão de um aplicativo iOS ou tvOS, os nomes dos métodos e classes são removidos, deixando apenas endereços de memória legíveis por máquina. Quando o aplicativo falha, o stack trace consiste nesse código legível por máquina.
Um dSYM file é um arquivo de projeto Xcode para debug symbols. Ele contém os símbolos de depuração que permitem a tradução do relatório de falha inicial em informações legíveis por humanos. Este processo é conhecido como simbolização.
New Relic tem suporte framework dinâmica para upload de dSYM. Se o seu aplicativo usa uma framework dinâmica com vários arquivos dSYM, o New Relic carrega e usa esses arquivos automaticamente.
Para obter mais informações, consulte Recuperar e fazer download de dSYMs ou Carregar arquivos dSYM.
Depurar o repórter de falhas
O relatório de falhas está ativado por padrão, mas há algumas circunstâncias em que ele será desativado:
If the app is running in a simulator: Um aplicativo em execução no simulador não pode ser usado com relatórios de falhas. As falhas do simulador não podem ser simbolizadas.
If the debugger is enabled: Só pode haver um manipulador de exceções não capturado registrado por vez por aplicativo. Se estiver executando com o depurador conectado, o New Relic não capturará e reportará falhas.
If another crash reporter is enabled: Se outro manipulador de exceção não detectado for registrado após o início do New Relic, esta mensagem de erro será registrada:
The New Relic exception handler has been replaced.This may result in crashes no longer reporting to New Relic.
Desativar relatório de falhas
Para desativar o relatório de falhas do New Relic, chame o seguinte método de API:
Language | Procedure |
---|---|
Objective-C | Ligue antes de
|
Swift | Ligue antes de
|
Para obter mais informações sobre esta chamada, consulte o arquivo NewRelic.h
. Para obter mais informações sobre sinalizadores de recurso aplicáveis, consulte o arquivo NewRelicFeatureFlags.h
.