Crashlytics データと(必要に応じて)Firebase セッション データを Cloud Logging にエクスポートすると、ログをフィルタしたり、ログベースの指標を作成したりできます。どちらも、特定のデータの表示、使用、分析に役立ちます。
まだ確認していない場合は、データでできることで、Cloud Logging に保存されているデータの操作に関する包括的なリストと例をご確認ください。
クエリでログをフィルタする
ログをフィルタすると、特定のデータを表示できるだけでなく、データ ストレージの費用を削減し、さらに分析を行うことができます。ログは LQL(Logging Query Language)を使用してフィルタします。
クエリを使用してログをフィルタする方法については、Logs Explorer を使用したサンプルクエリとログクエリの作成をご覧ください。下の表では、これらのクエリで使用できるフィールドについて説明しています。
フィルタの使用例
Crashlytics の場合、クエリの初期フィルタの例は次のとおりです。
特定のアプリ バージョンのすべての致命的なクラッシュを検索します。
logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents" jsonPayload.issue.errorType="FATAL" jsonPayload.version.displayVersion="3.2.0"
特定のデバイスモデル(Google Pixel 6a など)で発生しているクラッシュを特定します。
logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents" jsonPayload.device.model="Pixel 6a"
すべての致命的なイベントで特定の
OutOfMemoryErrorを検索します。logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents" jsonPayload.issue.errorType="FATAL" jsonPayload.issue.subtitle="java.lang.OutOfMemoryError"
特定の Crashlytics 問題 ID のイベントを検索します。
logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents" jsonPayload.issue.id="ISSUE_ID"
ログスキーマ
各ログエントリには、事前定義された構造とクエリ可能なフィールドがあります(LogEntry をご覧ください)。
Crashlytics データ、Firebase セッション データ、デバイスログなど、エクスポートされたデータのログスキーマについて説明します。
ログベースの指標を作成する
ログベースの指標を確認して構築した後、Cloud Monitoring でこれらの指標を使用して、グラフ、カスタム ダッシュボード、カスタム アラートを作成できます。
特定の期間中に発生したロギング イベントの数など、自動的に記録される事前定義されたシステム指標を使用します。
プロジェクトのユーザー定義の指標を作成します。特定のクエリに一致するログエントリの数のカウントや、一致するログエントリで特定の値の追跡が可能です。正規表現を使用してフィルタできます。ユーザー定義指標の料金を確認してください。
Cloud Monitoring を使用して、特定のメッセージを含むログエントリの数を記録し、ログエントリに報告されたレイテンシ情報を抽出します。これらの指標は、グラフやカスタム アラートで使用できます。
ログベースの指標の例
エクスポートした Crashlytics と Firebase セッション データから作成できるユーザー定義のログベースの指標の例を 2 つ示します。
Crashlytics データを使用する:
errorTypeというラベルが付いたfirebase/crashlytics_eventsという名前の指標を作成し、次のように定義します。logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents"Firebase セッション データを使用する場合:
firebase/session_eventsという名前の指標を作成し、eventTypeというラベルを付け、次のように定義します。logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fsession_events"