Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

属性を使用してデータをフィルタリングする

パフォーマンスモニタリングを使用すると、属性を使用してパフォーマンスデータをセグメント化し、さまざまな実際のシナリオでのアプリのパフォーマンスに焦点を当てることができます。

あなたが(下部のトレーステーブルにトレース名をクリックした後、パフォーマンスダッシュボード)、あなたはトレースを探求し、興味のあるメトリックにドリルダウンするために、様々な画面をクリックすることができます。ほとんどのページ上では、フィルターを使用することができます 、たとえば、属性によりデータをフィルタリングする(画面の左上)ボタンを:

属性でフィルタリングされているFirebasePerformanceMonitoringデータの画像

  • 過去のリリースや最新のリリースについてのデータを表示するには、アプリのバージョンによる絞り込み
  • 古いデバイスアプリを扱う方法については、デバイスによるフィルタ
  • データベースの場所が特定の地域に影響を与えていないことを確認するためのフィルタは国によって

属性に基づいてさらに強力な分析については、 BigQueryのにパフォーマンスデータをエクスポートします

デフォルトの属性

Performance Monitoringは、トレースのタイプに応じて、さまざまなデフォルト属性を自動的に収集します。

これらのデフォルトの属性に加えて、あなたもできるカスタム属性の作成あなたのカスタムコードのトレースをあなたのアプリへのカテゴリの特定により、セグメントデータに。たとえば、ゲームでは、ゲームレベルごとにデータをセグメント化できます。

iOSおよびAndroidアプリのデフォルト属性

iOSおよびAndroidアプリのすべてのトレースは、デフォルトで次の属性を収集します。

  • アプリ版
  • OSレベル
  • 端末
  • 無線
  • キャリア

さらに、ネットワーク要求トレースは次の属性も収集します。

  • MIMEタイプ

ユーザーデータの収集

カスタム属性を作成する

あなたはインストルメントのいずれかでカスタム属性を作成することができますカスタムコードのトレース

使用パフォーマンスの監視トレースAPIをカスタムコードのトレースにカスタム属性を追加します。

カスタム属性を使用するには、属性を定義し、それを特定のカスタムコードトレースに関連付けるコードをアプリに追加します。カスタム属性は、トレースの開始時から停止時までの間にいつでも設定できます。

次の点に注意してください。

  • カスタム属性の名前は、次の要件を満たす必要があります。何の先頭または最後の空白、無大手アンダースコア( _ )文字、および最大長は32文字ではありません。

  • 各カスタムコードトレースは、最大5つのカスタム属性を記録できます。

  • Googleに対して個人を個人的に識別する情報を含むカスタム属性を使用しないでください。

    このガイドラインの詳細

Java

Trace trace = FirebasePerformance.getInstance().newTrace("test_trace");

// Update scenario.
trace.putAttribute("experiment", "A");

// Reading scenario.
String experimentValue = trace.getAttribute("experiment");

// Delete scenario.
trace.removeAttribute("experiment");

// Read attributes.
Map<String, String> traceAttributes = trace.getAttributes();

Kotlin + KTX

Firebase.performance.newTrace("test_trace").trace {
    // Update scenario.
    putAttribute("experiment", "A")

    // Reading scenario.
    val experimentValue = getAttribute("experiment")

    // Delete scenario.
    removeAttribute("experiment")

    // Read attributes.
    val traceAttributes = this.attributes
}