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

특정 앱 코드에 대한 사용자 지정 모니터링 추가

를 수집 추적 모니터링 성능 앱의 성능을 모니터링 할 수 있습니다. 추적은 앱의 두 시점 사이에 캡처된 성능 데이터 보고서입니다.

고유한 추적을 만들어 앱의 특정 코드와 관련된 성능 데이터를 모니터링할 수 있습니다. 사용자 정의 코드 추적과 함께, 당신은 예를 들어 이미지의 집합을로드하거나 데이터베이스를 조회하는 특정 작업 또는 일련의 작업을 완료하기 위해 응용 프로그램을 걸리는 시간을 측정 할 수 있습니다.

사용자 정의 코드 추적에 대한 통계의 기본은 "시간"(추적의 시작 및 중지 점 사이의 시간),하지만 당신은 물론, 맞춤 측정 항목을 추가 할 수 있습니다.

코드에서 Performance Monitoring SDK에서 제공하는 API를 사용하여 사용자 지정 코드 추적의 시작과 끝을 정의합니다.안드로이드 앱의, 당신은 또한 사용하여 특정 방법을 모니터링 할 수 있습니다 @AddTrace 주석을 .들이 생성 한 후 사용자 정의 코드 추적은 언제든지 시작할 수 있습니다, 그들은 스레드 안전합니다.

이러한 추적에 대해 수집된 기본 메트릭은 "기간"이므로 "기간 추적"이라고도 합니다.

당신은 (에 대해 자세히 알아 성능 대시 보드의 맨 아래에있는 추적 테이블의 사용자 정의 추적 하위 탭에서 이러한 흔적에서 데이터를 볼 수 있습니다 콘솔을 사용하여 이 페이지 이상).

기본 속성, 사용자 정의 속성 및 사용자 정의 측정항목

사용자 지정 코드 추적의 경우는 성능을 자동 모니터링은 로그 의 기본 속성 당신이 중포 기지 콘솔의 추적에 대한 데이터를 필터링 할 수 있습니다 그래서 (응용 프로그램 버전, 국가, 장치 등과 같은 일반적인 메타 데이터). 당신은 또한 추가 할 수 있으며 모니터 사용자 정의 속성 (예를 들면, 게임 레벨이나 사용자 속성으로).

당신은 더 레코드에 사용자 지정 코드 추적을 구성 할 수 있습니다 맞춤 측정 항목 추적의 범위 내에서 발생하는 성능 관련 이벤트에 대한합니다. 예를 들어 캐시 적중 및 누락 수 또는 UI가 상당한 시간 동안 응답하지 않는 횟수에 대한 사용자 지정 메트릭을 만들 수 있습니다.

맞춤 속성 및 맞춤 측정항목은 추적에 대한 기본 속성 및 기본 측정항목과 함께 Firebase 콘솔에 표시됩니다.

사용자 지정 코드 추적 추가

모니터링 성능 사용하여 추적 API는 특정 응용 프로그램 코드를 모니터링하는 사용자 지정 코드 추적을 추가 할 수 있습니다.

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

  • 앱에는 여러 사용자 지정 코드 추적이 있을 수 있습니다.
  • 둘 이상의 사용자 지정 코드 추적을 동시에 실행할 수 있습니다.
  • 사용자 지정 코드 추적에 대한 이름은 다음 요구 사항을 충족하지해야합니다 어떤 선행 또는 후행 공백, 선두에 밑줄 ( _ ) 문자 및 최대 길이는 100 자입니다.
  • 사용자 정의 코드 추적을 추가 지원하는 맞춤 측정 항목사용자 지정 특성을 .

당신은 다음과 유사한 코드 라인 (이 예제의 사용자 지정 추적 이름을 사용하여 추적하려는 코드를 포장, 시작하고 사용자 지정 코드 추적을 중지하려면 test_trace ) :

자바

// Import these Performance Monitoring classes at the top of your `.java` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.Trace;

Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace");
myTrace.start();

// code that you want to trace

myTrace.stop();

코틀린+KTX

// Import these Performance Monitoring classes at the top of your `.kt` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.Trace;

val myTrace = Firebase.performance.newTrace("test_trace")
myTrace.start()

// code that you want to trace

myTrace.stop()

(선택 사항) 모니터 특정 방법 @AddTrace를 사용하여

안드로이드 애플 리케이션은 또한 지원 @AddTrace 주석 기기 사용자 지정 코드 트레이스를. 이 기능을 사용하면 지정된 메서드의 시작 부분에서 추적이 시작되고 메서드에 의해 호출된 모든 항목을 포함하여 메서드가 완료되면 추적이 중지됩니다.

예를 들어,라는 사용자 지정 코드를 추적 만들 수 있습니다 onCreateTrace 때 실행을 onCreate() 메소드가 호출된다.

자바

// Import these Performance Monitoring classes at the top of your `.java` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.AddTrace;

// Add the `@AddTrace` annotation above the method you want to trace
@Override
@AddTrace(name = "onCreateTrace", enabled = true /* optional */)
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
}

코틀린+KTX

// Import these Performance Monitoring classes at the top of your `.kt` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.AddTrace;

// Add the `@AddTrace` annotation above the method you want to trace
@AddTrace(name = "onCreateTrace", enabled = true /* optional */)
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
}

사용자 지정 코드 추적에 사용자 지정 메트릭 추가

모니터링 성능 사용 추적 API를 사용자 지정 코드 추적에 맞춤 측정 항목을 추가 할 수 있습니다.

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

  • 맞춤 측정 항목에 대한 이름은 다음과 같은 요구 사항을 충족해야합니다 : 더 선행 또는 후행 공백, 선두에 밑줄 ( _ ) 문자 및 최대 길이는 100 자입니다.
  • 각 사용자 지정 코드 추적 (기본 시간 메트릭 포함) (32 개) 측정까지 기록 할 수 있습니다.

사용자 지정 메트릭을 추가하려면 이벤트가 발생할 때마다 다음과 유사한 코드 줄을 추가합니다. 예를 들어, 캐시 적중 및 누락 등의 앱에서 발생하는이 사용자 정의 메트릭 계산 성능 관련 이벤트는 (예 이벤트 이름을 사용 item_cache_hit 하고 item_cache_miss 와의 증가 1 ).

자바

Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace");
myTrace.start();

// code that you want to trace (and log custom metrics)
Item item = cache.fetch("item");
if (item != null) {
    myTrace.incrementMetric("item_cache_hit", 1);
} else {
    myTrace.incrementMetric("item_cache_miss", 1);
}

myTrace.stop();

코틀린+KTX

val myTrace = Firebase.performance.newTrace("test_trace")
myTrace.start()

// code that you want to trace (and log custom metrics)
val item = cache.fetch("item")
if (item != null) {
    myTrace.incrementMetric("item_cache_hit", 1)
} else {
    myTrace.incrementMetric("item_cache_miss", 1)
}

myTrace.stop()

사용자 지정 코드 추적에 대한 사용자 지정 특성 만들기

사용 모니터링 성능 추적 API를 사용자 지정 코드 추적에 사용자 정의 속성을 추가 할 수 있습니다.

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

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

  • 사용자 정의 속성의 이름은 다음과 같은 요구 사항을 충족해야합니다 : 더 선행 또는 후행 공백, 선두에 밑줄 ( _ ) 문자 및 최대 길이는 32 자입니다.

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

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

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

자바

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

코틀린+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
}

성능 데이터 추적, 보기 및 필터링

대시보드에서 특정 측정항목 추적

키 메트릭 추세를하는 방법에 대한 자세한 내용은, 성능 대시 보드 상단에서 측정 보드에 추가합니다. 주간 변경 사항을 확인하여 회귀를 빠르게 식별하거나 코드의 최근 변경 사항으로 인해 성능이 향상되고 있는지 확인할 수 있습니다.

Firebase Performance Monitoring 대시보드의 측정항목 보드 이미지

로 이동 측정 보드에 메트릭을 추가하려면 성능 대시 보드 중포 기지 콘솔에서 다음 대시 보드 탭을 클릭합니다. 빈 메트릭 카드를 클릭한 다음 보드에 추가할 기존 메트릭을 선택합니다. 클릭 교체하거나 메트릭을 제거하는 것처럼, 더 많은 옵션에 대한 인구 통계 카드.

메트릭 보드는 시간 경과에 따라 수집된 메트릭 데이터를 그래픽 형식과 숫자 백분율 변경으로 표시합니다.

에 대해 자세히 알아보기 대시 보드를 사용하여 .

추적 및 해당 데이터 보기

로 이동 흔적을 보려면 성능 대시 보드 트레이스 테이블 아래로 스크롤 중포 기지 콘솔, 다음 적절한 하위 탭을 클릭합니다. 표에는 각 추적에 대한 몇 가지 상위 메트릭이 표시되며 특정 메트릭에 대한 백분율 변경을 기준으로 목록을 정렬할 수도 있습니다.

추적 테이블에서 추적 이름을 클릭하면 다양한 화면을 클릭하여 추적을 탐색하고 관심 있는 메트릭으로 드릴다운할 수 있습니다. 대부분의 페이지에, 당신은 필터 사용할 수있는 예를 들어, 속성으로 데이터를 필터링 (화면의 상단이 왼쪽) 버튼을 :

속성별로 필터링되는 Firebase Performance Monitoring 데이터의 이미지
  • 과거의 자료 나 최신 릴리스에 대한 뷰 데이터를 앱 버전별로 필터
  • 장치에 의해 필터 오래된 장치가 응용 프로그램을 처리하는 방법을 배울 수
  • 국가별로 필터는 반드시 데이터베이스 위치가 특정 지역에 영향을 미치는 있지 않은지 확인하기

에 대해 자세히 알아보기 당신의 흔적에 대한 데이터를 볼 수 .

다음 단계

  • 자세한 보고서보기 사용자 세션 같은 세션에서 수집 된 다른 흔적의 타임 라인 컨텍스트에서 특정 추적을 볼 수있는합니다.