Performance Monitoringを使用すると、属性を使用してパフォーマンスデータをセグメント化し、さまざまな実際のシナリオでのアプリのパフォーマンスに焦点を当てることができます。
トレーステーブル(パフォーマンスダッシュボードの下部にあります)でトレース名をクリックすると、対象のメトリックにドリルダウンできます。 [ のフィルター]ボタン(画面の左上)を使用して、属性でデータをフィルターします。次に例を示します。
- アプリのバージョンでフィルタリングして、過去のリリースまたは最新のリリースに関するデータを表示します
- デバイスでフィルタリングして、古いデバイスがアプリをどのように処理するかを確認します
- 国でフィルタリングして、データベースの場所が特定の地域に影響を与えていないことを確認します
属性に基づくさらに強力な分析を行うには、パフォーマンスデータをBigQueryにエクスポートします。
デフォルトの属性
Performance Monitoringは、トレースのタイプに応じて、さまざまなデフォルト属性を自動的に収集します。
これらのデフォルト属性に加えて、カスタムコードトレースにカスタム属性を作成して、アプリに固有のカテゴリでデータをセグメント化することもできます。たとえば、ゲームでは、ゲームレベルごとにデータをセグメント化できます。
AppleおよびAndroidアプリのデフォルト属性
AppleおよびAndroidアプリのすべてのトレースは、デフォルトで次の属性を収集します。
- アプリバージョン
- 国
- OSレベル
- デバイス
- 無線
- キャリア
さらに、ネットワーク要求トレースは次の属性も収集します。
- MIMEタイプ
ユーザーデータの収集
カスタム属性を作成する
インストルメントされたカスタムコードトレースのいずれかにカスタム属性を作成できます。
Performance Monitoring Trace 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 }