クラッシュの影響を受けていない指標について

Crashlytics はアプリごとに、クラッシュの影響を受けていない指標(特に、クラッシュの影響を受けていないユーザーの割合とクラッシュが発生しなかったセッションの割合)を自動的に計算して表示します。これらの指標は、アプリの安定性をすばやく把握するのに役立ちます。

クラッシュの影響を受けていない指標のグラフは、Crashlytics ダッシュボードの上部に表示されます。これらのグラフは、期間、ビルドなどのさまざまな項目でフィルタでき、(Android アプリの場合は)Google Play トラックでフィルタできます

クラッシュの影響を受けていない指標は、致命的なイベント(および、Unity と Flutter で致命的として報告されたキャッチされていない例外)についてのみ計算されます。

クラッシュの影響を受けていない指標を取得する

ほとんどのアプリでは、Crashlytics SDK をアプリに統合すると、クラッシュの影響を受けていない指標が自動的に計算されます。ただし、特定の状況において、Crashlytics がクラッシュの影響を受けていない指標の計算に必要なデータを受信しないことがあります。

  • 古いバージョンの Crashlytics SDK を使用するアプリのビルド(サポートされている最小バージョンについては、以下を参照)

  • Crashlytics データの自動収集とレポートを無効にするアプリのビルド(詳しくは、このページの「データ収集の設定が指標の品質に与える影響」をご覧ください)

クラッシュの影響を受けていない指標をサポートする SDK バージョン

クラッシュの影響を受けていない指標を取得するには、それらをサポートする Crashlytics SDK バージョンを使用するようにアプリを更新する必要があります。クラッシュの影響を受けていない指標をサポートする Crashlytics SDK のサポートされている最小バージョンは次のとおりです。

  • Apple プラットフォーム: v10.8.0 以降
  • Android: v18.6.0 以降(BoM v32.6.0 以降)
  • Flutter: v3.4.5 以降
  • Unity: 11.7.0 以降

更新された SDK バージョンを使用するアプリのビルドのクラッシュの影響を受けていない指標が自動的に取得されます。

クラッシュの影響を受けていない指標とは

クラッシュの影響を受けていないユーザーの指標には、クラッシュの影響を受けていないユーザークラッシュが発生しなかったセッションが含まれます。

クラッシュの影響を受けていない指標は、ユーザーとセッションの 2 つのコンセプトに依存します。アプリに関するクラッシュの影響を受けていない指標を取得するには、これらのコンセプトの両方に関するデータを送信できる Crashlytics SDK バージョンを使用する必要があります。Crashlytics におけるユーザーとセッションの識別方法は次のとおりです。

  • ユーザーとは、デバイス上のアプリの個々のインストールのことです。たとえば、1 人のユーザーが複数のデバイスにアプリをインストールした場合、Crashlytics は各インストールを個別のユニーク ユーザーとしてカウントします。

  • セッションとは、ユーザーがアプリケーションを操作する連続した期間のことです。新しいセッションは、アプリをコールド スタートしたときに開始するか、少なくとも 30 分間バックグラウンドで実行した後にフォアグラウンドで実行したときに開始されます。

また、クラッシュの影響を受けていない指標は、致命的なイベント(および、Unity と Flutter で致命的として報告されたキャッチされていない例外)についてのみ計算されます。

クラッシュの影響を受けていないユーザーの指標とは

クラッシュの影響を受けていないユーザーの指標は、選択した期間にアプリを利用したユーザーのうち、クラッシュが発生しなかったユーザーの割合です。この指標には、アプリが 1 人のユーザーに提供するエクスペリエンスが反映されます。全体的なユーザー エクスペリエンスの実現を目標にしている場合は、通常、アプリ全体の健全性に関する主要指標としてこの指標がトラッキングされます。

この指標は、特に次の種類のアプリに適用されます。

  • 長時間のカジュアルなセッションを行うアプリ(オンデマンド ストリーミング アプリ、ソーシャル メディア アプリ、カジュアル ゲームなど)。ユーザーは中断した場所から再開できます。一般的に、ユーザーはこれらのアプリを長時間(通常はマルチセッション環境で)利用するため、個々のセッションを完全なものにすることよりも、クラッシュの影響を受けていないユーザーの総数を最大にすることが優先されます。

  • ユーザーベースが確立されているアプリ(定評のある仕事用アプリや大規模なオンライン プラットフォームのように、プラットフォームの利用習慣と必要性の方が、クラッシュによる不便さを上回るアプリ)。

クラッシュが発生しなかったセッションの指標とは

クラッシュが発生しなかったセッションの指標は、選択した期間に発生し、クラッシュで終了しなかったセッションの割合です。クラッシュが発生しなかったセッションはアプリ全体が信頼できることを示し、ユーザーの信頼を築くことができます。クラッシュが発生しなかったセッションのトラッキングは、特に、新しいリリースの初期段階で重要です。ユーザーの最初の操作中にクラッシュが発生すると、ユーザーが不満を抱き、すぐに使用をやめてしまう可能性があるためです。

この指標は、次のようなタイプのアプリでよく使用されます。

  • 短時間かつ集中的に使用されるパターンを持つアプリ(リアルタイム ゲームや時間的制約のあるストリーミング アプリなど、重要な場面の途中でクラッシュすると、ユーザーが落胆してしまう可能性があるアプリ)。

  • 重大な結果をもたらすアプリ(金融アプリやナビゲーション アプリなど、エクスペリエンスの最終状態に重点が置かれているアプリ)。これらのアプリのいずれかでクラッシュが発生すると、重大な問題につながり、アプリの信頼性が失われる可能性があります。

クラッシュの影響を受けていない指標の計算

クラッシュの影響を受けていないユーザーの計算方法

クラッシュの影響を受けていないユーザーの値は、特定の期間にアプリを利用したユーザーのうち、クラッシュが発生しなかったユーザーの割合を表します。

クラッシュの影響を受けていないユーザーの割合を計算する式は次のとおりです。 入力値は Crashlytics SDK から提供され、Crashlytics ダッシュボードの右上にあるプルダウン メニューから選択した期間に基づいて設定されます。

CRASH_FREE_USERS_PERCENTAGE = 1 - (CRASHED_USERS / ALL_USERS)

  • CRASHED_USERS は、選択した期間にクラッシュが発生したユニーク ユーザーの総数を表します。

  • ALL_USERS は、選択した期間にアプリを利用したユーザーの総数を表します。

クラッシュの影響を受けていないユーザーの割合は、時間の経過に伴う集計です。平均ではありません。

クラッシュの影響を受けていないユーザーの値を異なる期間で比較しないでください。1 人のユーザーがクラッシュを経験する確率は、アプリの使用回数が増えるほど高くなるため、クラッシュの影響を受けていないユーザーの値は、期間が長くなるほど小さくなる可能性があります。

クラッシュが発生しなかったセッションの計算方法

クラッシュが発生しなかったセッションの値は、選択した期間にアプリで発生したセッションのうち、クラッシュしなかったものの割合を表します。

クラッシュが発生しなかったセッションの割合を計算する式は次のとおりです。入力値は Crashlytics SDK から提供され、Crashlytics ダッシュボードの右上にあるプルダウン メニューから選択した期間に基づいて設定されます。

CRASH_FREE_SESSIONS_PERCENTAGE = 1 - (CRASHED_SESSIONS / ALL_SESSIONS)

  • CRASHED_SESSIONS は、選択した期間にクラッシュで終了したセッションの数を表します。

  • ALL_SESSIONS は、選択した期間にアプリで発生したセッションの総数を表します。

クラッシュが発生しなかったセッションの割合は、時間の経過に伴う集計です。平均ではありません。

データ収集の設定が指標の品質に与える影響

データ収集の設定によっては、クラッシュの影響を受けていない指標に低い値またはゼロの値が表示されることがあります。クラッシュの影響を受けていない指標の信頼性が低い可能性がある一般的なシナリオは次の 2 つです。

  • 自動クラッシュ レポートを無効にしてオプトイン レポートを有効にした場合、クラッシュ情報は、データ収集を明示的にオプトインしたユーザーからのみ Crashlytics に送信されます。そのため、Crashlytics にはオプトインしたユーザーのクラッシュ情報のみが含まれるため(すべてのユーザーではない)、クラッシュの影響を受けていない指標の精度が影響を受けます。つまり、クラッシュの影響を受けていない指標の信頼性が低下し、アプリの全体的な安定性を反映しなくなる可能性があります。

  • データの自動収集が無効になっている場合は、sendUnsentReports を使用して、デバイス上のキャッシュに保存されたレポートを Crashlytics に送信できます。 この方法を使用すると、Crashlytics にクラッシュ データが送信されますが、セッション データは送信されません。そのため、コンソール グラフには、クラッシュの影響を受けていない指標に低い値またはゼロの値が表示されます。