Firebase Crashlytics と Firebase コンソールのダッシュボードを使用すると、アプリの安定性に関するデータを探索して分析できます。標準の Crashlytics 機能は、アプリの実行に関連する多くのタスクや目標の達成に役立ちます。
ただし、アプリやビジネスが成長し、複雑になるにつれて、さまざまな種類の質問に対する回答が必要になったり、独自のデータ分析やデータ結合が必要になったり、データに基づいてカスタム ダッシュボードやカスタム アラートを構築する必要が生じたりすることがあります。
Crashlytics には、Google Cloud サービス(BigQuery と Cloud Logging)にデータをエクスポートするためのオプションが用意されています。これらのサービスの機能の包括的なリストについては、エクスポートされたデータで可能な操作をご覧ください。
BigQuery: SQL クエリを使用してデータを分析し、他のデータセットのデータを結合し、データを別のクラウド プロバイダにエクスポートし、データの可視化とカスタム ダッシュボードを構築します(Looker Studio を使用するなど)。
BigQuery へのエクスポートを設定するCloud Logging: 高度な分析用のログベースの指標を作成し、カスタム通知チャネル用の高度なアラートを設定し、Cloud Monitoring を使用してカスタム ダッシュボードとグラフを作成します。
Cloud Logging へのエクスポートを設定する
このページでは、エクスポートした Crashlytics データと(必要に応じて)Firebase セッション データをこれらの Google Cloud サービスで使用する方法について詳しく説明します。
各サービスにエクスポートされるデータ
エクスポートには、デバイスの種類、オペレーティング システム、例外(Android アプリ)またはエラー(Apple アプリ)、Crashlytics ログなど、未加工の Crashlytics データ(必要に応じて Firebase セッション データ)と、関連付けられたその他のメタデータが含まれます。
各サービスにエクスポートされるデータは同じですが、構造が異なります。BigQuery の場合、データはテーブルに格納され(データセット スキーマを参照)、Cloud Logging の場合、データはログ形式で格納されます(ログスキーマを参照)。
エクスポートされたデータで可能な操作
以下に、これらの Google Cloud サービスを Crashlytics データとともに使用する場合に可能なことの概要を示します。Google Cloud ドキュメントでは、BigQuery と Cloud Logging のすべての機能について確認できます。
BigQuery にエクスポートされたデータ
SQL クエリを使用してデータを分析する
Crashlytics データに対してクエリを実行して、カスタム レポートと概要を生成できます。これらのタイプのカスタム レポートは Firebase コンソールの Crashlytics ダッシュボードでは利用できないため、クラッシュ データの分析と理解を補完できます。クエリの例のコレクションも提供しています。異なるデータセットのデータを結合する
たとえば、Crashlytics データ エクスポートを設定するときに Firebase セッション データをエクスポートすることを選択すると、クラッシュの影響を受けていないユーザーとクラッシュが発生しなかったセッションをより詳しく理解できます。また、さまざまな Firebase プロダクト(Performance Monitoring など)や Google Analytics からデータをエクスポートし、BigQuery で Crashlytics データと結合して分析することもできます。ビューを作成する
BigQuery UI を使用して、SQL クエリで定義した仮想テーブルである「ビュー」を作成できます。さまざまな種類のビューとその作成方法に関する詳細な手順については、BigQuery ドキュメントをご覧ください。データの可視化とカスタム ダッシュボードを構築する
たとえば、既製の Crashlytics テンプレートを使用して、Looker Studio を使用してダッシュボードを構築できます。
Cloud Logging にエクスポートされたデータ
高度な分析用のログベースの指標を作成する
ログエントリを、特定のアプリの動作や安定性の傾向を長期にわたって追跡する指標に変換します。たとえば、特定の致命的でない例外が発生した回数をカウントする指標を作成し、他のシステム健全性指標とともに可視化できます。カスタム通知チャンネルの高度なアラートを設定する
Cloud Monitoring でカスタムのアラート ポリシーを設定して、デフォルトのメールアラートを拡張します。特定のログパターンまたはしきい値に基づいて通知をトリガーし、Slack、Jira、PagerDuty などのサービスに送信します。カスタム ダッシュボードとグラフを構築する
Cloud Monitoring を使用して、ビジネスにとって最も重要な指標をハイライト表示するパーソナライズされたダッシュボードを作成します。クラッシュなし率、セッション数、エラー数を、他の Google Cloud プロダクト データと組み合わせて 1 つのビューで可視化できます。アプリのクラッシュとバックエンド ログを関連付ける
クライアントサイドのクラッシュ データをサーバーサイドのログと 1 か所で統合します。大規模なクラッシュの生データを検索してフィルタする
Logs Explorer を使用して、LQL(Logging Query Language)で複雑なクエリを実行します。すべてのユーザーとバージョンで特定のログメッセージ、カスタムキー、ブレッドクラムを検索して、まれな問題やデバイス固有の問題を見つけることができます。長期保持または外部処理用にデータを転送する
ログシンクを使用して、コンプライアンス用に Crashlytics ログを Cloud Storage に、大規模分析用に BigQuery に、独自の外部モニタリング ツールにデータをストリーミングするために Pub/Sub にエクスポートします。
BigQuery と Cloud Logging のどちらを選択すべきか?
データをエクスポートする場所を選択する際に考慮すべき主な違いは次のとおりです。
| BigQuery にエクスポートされたデータ | Cloud Logging にエクスポートされたデータ | |
|---|---|---|
| 適用可能なビジネスロール | データ アナリストのロールに最適です。特に、複数のデータセットのデータを結合する場合に適しています。 | デベロッパーや SRE がカスタム アラートやダッシュボードを設定したり、サーバーサイドのモニタリング データに簡単に接続したりするのに役立ちます。 |
| Google Cloud サービスでデータを使用するためのオプション |
|
|
| データの結合とさらなるエクスポートのオプション |
|
|
| 料金 |
ストレージとクエリの両方に対して料金が発生します。 詳細については、Crashlytics データを BigQuery にエクスポートするをご覧ください。 |
ストレージの料金は発生しますが、クエリの料金は発生しません。 詳細については、Crashlytics データを Cloud Logging にエクスポートするをご覧ください。 |
次のステップ
BigQuery へのエクスポートを設定する Cloud Logging へのエクスポートを設定する
Crashlytics と(必要に応じて)Firebase セッション データのデータ エクスポートを設定したら、Google Cloud サービスの機能の使用を開始します。
BigQuery にエクスポートされたデータについては、クエリの例を確認し、エクスポートされたデータのデータセット スキーマについて学習します。
Cloud Logging にエクスポートされたデータについては、エクスポートされたデータの使用方法、ログベースの指標のフィルタリングと使用方法、カスタム通知チャネルのカスタム アラートの設定方法をご覧ください。
さまざまな Google Cloud サービスを使用してカスタム ダッシュボードを構築します。BigQuery または Cloud Logging で利用できるオプションについて説明します。