속성을 사용하여 데이터 필터링

성능 모니터링을 사용하면 특성을 사용하여 성능 데이터를 세분화하고 다양한 실제 시나리오에서 앱 성능에 집중할 수 있습니다.

추적 테이블( 성능 대시보드 하단에 있음)에서 추적 이름을 클릭하면 관심 있는 메트릭으로 드릴다운할 수 있습니다. 필터 버튼(화면 왼쪽 상단)을 사용하여 속성별로 데이터를 필터링합니다. 예를 들면 다음과 같습니다.

속성별로 필터링되는 Firebase Performance Monitoring 데이터의 이미지

  • 앱 버전 별로 필터링하여 과거 릴리스 또는 최신 릴리스에 대한 데이터 보기
  • 기기 별로 필터링하여 구형 기기에서 앱을 처리하는 방법 알아보기
  • 국가 별로 필터링하여 데이터베이스 위치가 특정 지역에 영향을 미치지 않도록 합니다.

속성을 기반으로 하는 훨씬 더 강력한 분석을 위해 성능 데이터를 BigQuery로 내보냅니다 .

기본 속성

Performance Monitoring은 추적 유형에 따라 다양한 기본 속성을 자동으로 수집합니다.

이러한 기본 속성 외에도 사용자 지정 코드 추적 에 사용자 지정 속성을 만들어 앱과 관련된 범주별로 데이터를 분할할 수도 있습니다. 예를 들어 게임에서 게임 수준별로 데이터를 분류할 수 있습니다.

Apple 및 Android 앱의 기본 속성

Apple 및 Android 앱에 대한 모든 추적은 기본적으로 다음 속성을 수집합니다.

  • 앱 버전
  • 국가
  • OS 수준
  • 장치
  • 라디오
  • 담체

또한 네트워크 요청 추적은 다음 속성도 수집합니다.

  • MIME 유형

사용자 데이터 수집

사용자 정의 속성 만들기

계측된 모든 사용자 지정 코드 추적 에서 사용자 지정 특성을 만들 수 있습니다.

성능 모니터링 추적 API( Swift | Obj-C )를 사용하여 사용자 정의 코드 추적에 사용자 정의 속성을 추가하십시오.

사용자 지정 속성을 사용하려면 속성을 정의하고 이를 특정 사용자 지정 코드 추적과 연결하는 코드를 앱에 추가합니다. 추적이 시작될 때와 추적이 중지될 때 사이에 언제든지 사용자 정의 속성을 설정할 수 있습니다.

다음 사항에 유의하십시오.

  • 사용자 정의 속성의 이름은 선행 또는 후행 공백이 없고 선행 밑줄( _ ) 문자가 없고 최대 길이가 32자라는 요구 사항을 충족해야 합니다.

  • 각 사용자 정의 코드 추적은 최대 5개의 사용자 정의 속성을 기록할 수 있습니다.

  • Google에서 개인을 식별하는 정보가 포함된 맞춤 속성을 사용해서는 안 됩니다.

    이 지침에 대해 자세히 알아보기

빠른

참고: 이 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;

오브젝티브-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];