Les rapports de crash différés, tels que présentés dans l'agent Android de New Relic version 6.0.0, impliquent l'enregistrement de rapports de crash lorsqu'ils se produisent mais ne les téléchargement pas avant le lancement de l'application suivante [1]. Cette approche peut avoir un impact sur l'intégration des SDK de rapports sur plusieurs accidents de plusieurs manières:
1. Duplication du rapport de crash: les rapports différés aident à réduire les rapports de crash en double en retardant le téléchargement jusqu'à ce que l'application redémarre. Cependant, lors de l'utilisation de plusieurs SDK, chacun peut capturer le même crash, conduisant potentiellement à des rapports en double sur différentes plates-formes, sauf si elles sont configurées pour fonctionner ensemble de manière transparente.
2. Par exemple, une nouvelle relique peut enchaîner les gestionnaires d'exception précédents si un autre cadre est déjà enregistré [1]. Cela signifie que plusieurs SDK peuvent coexister et signaler les accidents, mais l'ordre d'initialisation peut affecter le SDK capture d'abord l'accident.
3. Complexité de configuration: l'intégration des SDK de rapports de crash multiples nécessite une configuration minutieuse pour s'assurer qu'ils fonctionnent efficacement ensemble. Les développeurs doivent considérer comment chaque SDK gère les plantages, qu'ils prennent en charge les rapports différés et comment ils interagissent avec d'autres cadres. Par exemple, Firebase Crashlytics et Dynatrace peuvent être utilisés ensemble, mais s'assurer qu'ils n'interfèrent pas avec la fonctionnalité de l'autre est crucial [2].
4. Cohérence des données: les rapports différés peuvent entraîner des incohérences si différents SDK gèrent les accidents à différents moments. Par exemple, un SDK peut signaler immédiatement un crash, tandis qu'un autre attend que l'application redémarre. Cela pourrait compliquer l'analyse des données de crash sur différentes plates-formes.
5. Défis de débogage: Lorsque vous utilisez plusieurs SDK avec des rapports différés, les accidents de débogage peuvent devenir plus complexes. Les développeurs doivent s'assurer que chaque SDK est configuré correctement pour capturer et signaler les plantages avec précision, ce qui peut être difficile lorsqu'il s'agit de téléchargements différés.
En résumé, les rapports de crash différés peuvent ajouter de la complexité à l'intégration des SDK de rapports de crash multiples, nécessitant une configuration minutieuse pour garantir une interaction transparente et des rapports de données cohérents. Les développeurs doivent examiner comment chaque SDK gère les plantages et comment ils interagissent avec d'autres cadres pour maximiser les avantages de la déclaration des accidents.
Citations:[1] https://docs.newrelic.com/docs/mobile-monitring/new-relic-mobile-android/install-configure/android-agent-crash-reporting/
[2] https://community.dynatrace.com/t5/real-user-monitoring/multiple-unique-id-and-crash-details/m-p/163207
[3] https://trangotech.com/mobile/glossary/crash-reportting/
[4] https://stackoverflow.com/questions/78771698/crash-reportting-tool-which-di-dinfeciate-crash-from-my-sdk-and-client-app-in-and
[5] https://stackoverflow.com/questions/10755278/USE-Multiple-crash-reporter-on-ios
[6] https://docs.omverse.nvidia.com/kit/docs/carbonite/latest/docs/crashreporter.html
[7] https://firebase.google.com/docs/crashlytics/get-started
[8] https://firebase.google.com/docs/crashlytics/customalize-crash-reports
[9] https://forum.sentry.io/t/flutter-ios-Sentry-cocoa-sdk-not-reporting-all-crashes/11082
[10] https://firebase.google.com/docs/crashlytics
[11] https://forum.sentry.io/t/native-crash-not-repplated-to-sentry-but-other-platform/12077
[12] https://raygun.com/learn/the-complete-guide-to-error-monitoring-and-crash-reporting