Catch up on everthing we announced at this year's Firebase Summit. Learn more

使用特性过滤数据

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

点击跟踪记录表(位于“性能”信息中心的底部)中的某个跟踪记录名称后,即可点击各个相关屏幕以浏览跟踪记录并深入了解感兴趣的指标。在大多数页面上,您可以使用过滤 按钮(屏幕左上角)按特性过滤数据,例如:

按特性过滤 Firebase Performance Monitoring 数据的图片

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

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

默认特性

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

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

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

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

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

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

  • MIME 类型

收集用户数据

创建自定义特性

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

使用 Performance Monitoring Trace API (Swift | Obj-C) 将自定义特性添加到自定义代码跟踪记录中。

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

请注意以下几点:

  • 自定义特性的名称必须符合以下要求:没有前导空格或尾随空格、没有前导下划线 (_) 字符,长度上限为 32 个字符。

  • 每个自定义代码跟踪记录最多可记录 5 个自定义特性。

  • 您不应使用包含的信息可让 Google 识别出个人身份的自定义特性。

    详细了解此准则

Swift

注意:此 Firebase 产品不适用于 macOS、Mac Catalyst、watchOS 目标平台。
let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME")

trace.setValue("A", forAttribute: "experiment")

// Update scenario.
trace.setValue("B", forAttribute: "experiment")

// Reading scenario.
let experimentValue:String? = trace.valueForAttribute("experiment")

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

// Read attributes.
let attributes:[String, String] = trace.attributes;

Objective-C

注意:此 Firebase 产品不适用于 macOS、Mac Catalyst、watchOS 目标平台。
FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"];

[trace setValue:@"A" forAttribute:@"experiment"];

// Update scenario.
[trace setValue:@"B" forAttribute:@"experiment"];

// Reading scenario.
NSString *experimentValue = [trace valueForAttribute:@"experiment"];

// Delete scenario.
[trace removeAttribute:@"experiment"];

// Read attributes.
NSDictionary <NSString *, NSString *> *attributes = [trace attributes];