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 セッション データを使用:
eventTypeというラベルが付いたfirebase/session_eventsという名前の指標を作成し、次のように定義します。logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fsession_events"