使用属性过滤数据


借助 Performance Monitoring,您可以使用属性来细分性能数据,并重点关注您的应用在不同实际场景中的性能。

点击跟踪记录表(位于“性能”信息中心底部)中的跟踪记录名称后,您可以深入了解感兴趣的指标。您可以使用过滤 按钮(屏幕左上角)按属性过滤数据,例如:

<span class=按属性过滤 Firebase Performance Monitoring 数据" /> 的图片

  • 按“应用版本”过滤可查看有关过去版本或最新版本的数据
  • 按“设备”过滤可了解旧设备处理应用的方式
  • 按“国家/地区”过滤可确保您的数据库位置不会影响特定区域

如需基于属性实现更强大的分析,请将性能数据导出到 BigQuery

默认属性

Performance Monitoring 会根据跟踪记录类型自动收集各种默认属性。

除上述默认属性外,您还可以针对自定义代码跟踪记录创建自定义属性,以按适用于您应用的类别来细分数据。例如,在游戏中,您可以按游戏关卡细分数据。

适用于 Apple 和 Android 应用的默认属性

默认情况下,Apple 和 Android 应用的所有跟踪记录均会收集以下属性:

  • 应用版本
  • 国家/地区
  • 操作系统级别
  • 设备
  • 无线网络
  • 运营商

此外,网络请求跟踪记录还会收集以下属性:

  • MIME 类型

收集用户数据

创建自定义属性

您可以针对任何插桩的自定义代码跟踪记录创建自定义属性。

使用 Performance MonitoringTrace API 将自定义属性添加到自定义代码跟踪记录中。

如需使用自定义属性,请向您的应用添加定义该属性的代码,并将其与特定自定义代码跟踪记录相关联。您可以在跟踪记录开始和结束之间的任何时间设置自定义属性。

请注意以下几点:

  • 自定义属性的名称必须符合以下要求:

    • 没有前导空格或尾随空格,也没有前导下划线 (_) 字符
    • 不能有空格
    • 长度上限为 32 个字符
    • 名称允许使用的字符包括 A-Za-z_
  • 每个自定义代码跟踪记录最多可记录 5 个自定义属性。

  • 请确保自定义属性不包含任何可让 Google 识别出个人身份的信息。

    详细了解此准则

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
}

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();