New RelicのAndroidエージェントバージョン6.0.0で導入された延期クラッシュレポートには、クラッシュレポートが発生したときに記録するが、次のアプリケーションが起動するまでアップロードしない[1]。このアプローチは、複数のクラッシュレポートSDKの統合にいくつかの方法で影響を与える可能性があります。
1。クラッシュレポートの重複:繰延レポートは、アプリが再起動するまでアップロードを遅らせることにより、重複するクラッシュレポートを減らすのに役立ちます。ただし、複数のSDKを使用する場合、それぞれが同じクラッシュをキャプチャする可能性があり、シームレスに連携するように構成されていない限り、異なるプラットフォームでレポートを複製する可能性があります。
2。SDKの相互運用性:ほとんどのクラッシュレポートツールは、無作法な例外ハンドラーをチェーンすることにより、他のフレームワークと連携するように設計されています。たとえば、New Relicは、別のフレームワークがすでに登録されている場合、以前の例外ハンドラーをチェーンできます[1]。これは、複数のSDKが共存してクラッシュを報告できることを意味しますが、初期化の順序は、SDKが最初にクラッシュをキャプチャするかに影響する可能性があります。
3。構成の複雑さ:複数のクラッシュレポートSDKを統合するには、効果的に連携するために慎重な構成が必要です。開発者は、各SDKが繰延レポートをサポートするかどうか、および他のフレームワークとどのように対話するかをサポートするかどうかにかかわらず、クラッシュする方法を考慮する必要があります。たとえば、Firebase CrashlyticsとDynatraceを一緒に使用できますが、互いの機能に干渉しないようにすることが重要です[2]。
4。データの一貫性:異なるSDKが異なる時間にクラッシュを処理する場合、繰延報告は矛盾につながる可能性があります。たとえば、あるSDKはすぐにクラッシュを報告するかもしれませんが、別のSDKはアプリが再起動するまで待ちます。これにより、さまざまなプラットフォームでのクラッシュデータの分析が複雑になる可能性があります。
5。デバッグの課題:繰延レポートで複数のSDKを使用する場合、クラッシュのデバッグがより複雑になる可能性があります。開発者は、各SDKがクラッシュを正確にキャプチャおよび報告するように正しく構成されていることを確認する必要があります。これは、延期されたアップロードを扱うときに困難な場合があります。
要約すると、延期されたクラッシュレポートは、複数のクラッシュレポートSDKの統合に複雑さを追加することができ、シームレスな相互作用と一貫したデータレポートを確保するために慎重な構成が必要です。開発者は、各SDKがクラッシュする方法と、クラッシュレポートの利点を最大化するために他のフレームワークと対話する方法を検討する必要があります。
引用:[1] https://docs.newrelic.com/docs/mobile-monitoring/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-reporting/
[4] https://stackoverflow.com/questions/78771698/crash-reporting-tool-which-diferentiate-crash-from-my-sdk-and-client-appin and
[5] https://stackoverflow.com/questions/10755278/use-multiple-crash-reporter-on-ios
[6] https://docs.omniverse.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/customize-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----------------ther
[12] https://raygun.com/learn/the-complete-guide-to-error-monitoringとcrash-reporting