네트워크 요청 데이터 집계 사용자 지정

Firebase 성능 모니터링은 유사한 네트워크 요청에 대한 데이터를 자동으로 집계하여 네트워크 요청 성능의 추세를 이해하는 데 도움이 됩니다.

하지만 앱의 사용 사례를 더 잘 지원하기 위해 Firebase가 특정 네트워크 요청 데이터를 집계하는 방법을 맞춤설정해야 하는 경우가 있습니다. 네트워크 요청에 대한 데이터 집계를 사용자 지정하는 두 가지 방법을 제공합니다. 사용자 지정 URL 패턴에 따라 데이터를 집계 하고 성공률 계산 방법을 사용자 지정합니다 .

사용자 정의 URL 패턴에서 데이터 집계

각 요청에 대해 Firebase는 네트워크 요청의 URL이 URL 패턴 과 일치하는지 확인합니다. 요청 URL이 URL 패턴과 일치하는 경우 Firebase는 URL 패턴 아래에 요청 데이터를 자동으로 집계합니다.

Firebase가 파생된 자동 URL 패턴 일치 로 캡처하지 않는 특정 URL 패턴을 모니터링하는 맞춤 URL 패턴 을 만들 수 있습니다. 예를 들어 사용자 지정 URL 패턴을 사용하여 특정 URL 문제를 해결하거나 시간 경과에 따른 특정 URL 집합을 모니터링할 수 있습니다.

Firebase는 Firebase 콘솔의 성능 대시보드 하단에 있는 추적 테이블의 네트워크 요청 하위 탭에 모든 URL 패턴(맞춤 URL 패턴 포함)과 집계 데이터를 표시합니다.

맞춤 URL 패턴 일치는 어떻게 작동합니까?

Firebase는 자동 URL 패턴 일치로 대체되기 전에 구성된 모든 맞춤 URL 패턴에 요청 URL을 일치시키려고 시도합니다. 맞춤 URL 패턴과 일치하는 모든 요청의 경우 Firebase는 맞춤 URL 패턴 아래에 요청 데이터를 집계합니다.

요청의 URL이 두 개 이상의 맞춤 URL 패턴과 일치하는 경우 Firebase 는 경로의 왼쪽에서 오른쪽으로 일반 텍스트 > * > ** 순서에 따라 가장 구체적인 맞춤 URL 패턴에만 요청을 매핑합니다. 예를 들어 example.com/books/dog 에 대한 요청은 두 가지 사용자 정의 URL 패턴과 일치합니다.

  • example.com/books/*
  • example.com/*/dog

그러나 example.com/*/dog 의 가장 왼쪽 세그먼트 booksexample.com/books/* 의 가장 왼쪽 세그먼트 * 보다 우선하므로 example.com/books/* 패턴이 가장 구체적인 일치 URL 패턴입니다.

새 사용자 정의 URL 패턴을 생성할 때 다음 사항에 유의하십시오.

  • 이전 요청의 일치 및 집계 데이터는 새 사용자 지정 URL 패턴을 생성해도 영향을 받지 않습니다. Firebase는 요청 데이터를 소급하여 다시 집계하지 않습니다.

  • 새로운 사용자 정의 URL 패턴을 생성하면 향후 요청만 영향을 받습니다. Performance Monitoring이 새로운 사용자 정의 URL 패턴에서 데이터를 수집하고 집계하는 데 최대 12시간을 기다려야 할 수 있습니다.

맞춤 URL 패턴 만들기

Firebase 콘솔의 성능 대시보드 하단에 있는 추적 테이블의 네트워크 요청 하위 탭에서 맞춤 URL 패턴을 만들 수 있습니다.

새 사용자 정의 URL 패턴을 생성하려면 프로젝트 구성원이 소유자 또는 편집자 여야 합니다. 그러나 모든 프로젝트 구성원은 사용자 정의 URL 패턴 및 집계 데이터를 볼 수 있습니다.

앱당 최대 400개의 사용자 정의 URL 패턴을 생성하고 해당 앱에 대한 도메인당 최대 100개의 사용자 정의 URL 패턴을 생성할 수 있습니다.

사용자 정의 URL 패턴을 생성하려면 호스트 이름으로 시작하고 경로 세그먼트가 뒤따릅니다. 호스트 이름은 유효한 도메인을 포함해야 하며 선택적으로 하위 도메인을 포함할 수 있습니다. 다음 경로 세그먼트 구문을 사용하여 URL과 일치할 수 있는 패턴을 만듭니다.

  • 일반 텍스트 — 정확한 문자열과 일치
  • * — 첫 번째 하위 도메인 세그먼트 또는 단일 경로 세그먼트의 모든 문자열과 일치
  • ** — 임의의 경로 접미사와 일치

다음 표에서는 몇 가지 잠재적인 맞춤 URL 패턴 일치를 설명합니다.

맞추기 위해... 다음과 같은 사용자 정의 URL 패턴을 작성하십시오. 이 URL 패턴과 일치하는 예
정확한 URL example.com/foo/baz example.com/foo/baz
단일 경로 세그먼트( * ) example.com/*/baz example.com/foo/baz
example.com/bar/baz
example.com/*/*/baz example.com/foo/bar/baz
example.com/bah/qux/baz
example.com/foo/* example.com/foo/baz
example.com/foo/bar

참고: 이 패턴은 example.com/foo 와 일치하지 않습니다.

임의의 경로 접미사( ** ) example.com/foo/** example.com/foo
example.com/foo/baz
example.com/foo/baz/more/segments
subdomain.example.com/foo.bar/** subdomain.example.com/foo.bar
subdomain.example.com/foo.bar/baz
subdomain.example.com/foo.bar/baz/more/segments
첫 번째 하위 도메인 세그먼트( * ) *.example.com/foo bar.example.com/foo
baz.example.com/foo

맞춤 URL 패턴 및 해당 데이터 보기

Firebase는 Firebase 콘솔의 성능 대시보드 하단에 있는 추적 테이블의 네트워크 요청 하위 탭에 모든 URL 패턴(맞춤 URL 패턴 포함)과 집계 데이터를 표시합니다.

사용자 정의 URL 패턴 보려면 추적 테이블의 네트워크 요청 하위 탭에 있는 드롭다운 메뉴에서 사용자 정의 패턴 을 선택하십시오. 사용자 정의 URL 패턴에 집계된 데이터가 없으면 이 목록에만 나타납니다.

URL 패턴으로 집계된 데이터의 데이터 보존 기간 이 종료되면 Firebase는 URL 패턴에서 해당 데이터를 삭제합니다. 맞춤 URL 패턴으로 집계된 모든 데이터가 만료되면 Firebase는 Firebase 콘솔에서 맞춤 URL 패턴을 삭제하지 않습니다 . 대신 Firebase는 추적 테이블의 네트워크 요청 하위 탭에 있는 사용자 정의 패턴 목록에 "빈" 사용자 정의 URL 패턴을 계속 나열합니다.

맞춤 URL 패턴 제거

프로젝트에서 사용자 정의 URL 패턴을 제거할 수 있습니다. 자동 URL 패턴은 제거할 수 없습니다.

  1. 성능 대시보드 에서 추적 테이블까지 아래로 스크롤한 다음 네트워크 요청 하위 탭을 선택합니다.

  2. 네트워크 요청 하위 탭의 드롭다운 메뉴에서 맞춤 패턴 을 선택합니다.

  3. 제거하려는 맞춤 URL 패턴의 행 위로 마우스를 가져갑니다.

  4. 행의 맨 오른쪽에 있는 를 클릭하고 사용자 지정 패턴 제거 를 선택한 다음 대화 상자에서 제거를 확인합니다.

맞춤 URL 패턴을 제거할 때 다음 사항에 유의하세요.

  • 이후의 모든 요청은 다음으로 가장 구체적으로 일치하는 사용자 지정 URL 패턴에 매핑됩니다. Firebase에서 일치하는 맞춤 URL 패턴을 찾지 못하면 자동 URL 패턴 일치 로 대체됩니다.

  • 이전 요청의 일치 및 집계 데이터는 사용자 지정 URL 패턴을 제거해도 영향을 받지 않습니다.

    해당 데이터 보존 기간이 끝날 때까지 네트워크 요청 하위 탭( 모든 네트워크 요청 이 선택된 상태)에서 제거된 사용자 지정 URL 패턴 및 집계된 데이터에 계속 액세스할 수 있습니다. 제거된 맞춤 URL 패턴 아래에 집계된 모든 데이터가 만료되면 Firebase에서 맞춤 URL 패턴을 삭제합니다.

  • 네트워크 요청 하위 탭( 사용자 지정 패턴 이 선택된 상태)에는 제거된 사용자 지정 URL 패턴이 나열되지 않습니다.

다음 단계

  • 앱의 성능을 저하시키는 네트워크 요청에 대한 경고를 설정합니다 . 예를 들어 특정 URL 패턴에 대한 응답 시간 이 설정한 임계값을 초과하는 경우 팀에 대한 이메일 알림을 구성할 수 있습니다.

성공률 계산 방법 사용자 지정

Firebase가 각 네트워크 요청에 대해 모니터링하는 측정항목 중 하나는 요청의 성공률입니다. 성공률은 전체 응답 대비 성공한 응답의 비율입니다. 이 메트릭은 네트워크 및 서버 오류를 측정하는 데 도움이 됩니다.

특히 Firebase는 100~399 범위의 응답 코드가 포함된 네트워크 요청을 성공적인 응답으로 자동 계산합니다.

Firebase에서 자동으로 성공으로 계산하는 응답 코드 외에 특정 오류 코드를 "성공적인 응답"으로 계산하여 성공률 계산을 맞춤설정할 수 있습니다.

예를 들어 앱에 검색 엔드포인트 API가 있는 경우 검색 엔드포인트에 대해 404개의 응답이 예상되기 때문에 404개의 응답을 "성공"으로 계산할 수 있습니다. 매시간 이 검색 엔드포인트에 대해 100개의 샘플이 있고 그 중 60개는 200개 응답이고 40개는 404개 응답이라고 가정합니다. 성공률을 구성하기 전의 성공률은 60%입니다. 404개 응답을 성공한 것으로 계산하도록 성공률 계산을 구성한 후 성공률은 100%가 됩니다.

성공률 계산 구성

네트워크 URL 패턴의 성공률 계산을 구성하려면 firebaseperformance.config.update 권한이 있어야 합니다. Firebase Performance Admin , Firebase Quality Admin , Firebase Admin 및 프로젝트 소유자 또는 편집자 역할에는 기본적으로 이 필수 권한이 ​​포함됩니다.

  1. Firebase 콘솔의 성능 모니터링 대시보드 으로 이동한 다음 성공률 계산을 구성할 앱을 선택합니다.
  2. 화면 하단의 추적 테이블까지 아래로 스크롤하고 네트워크 요청 탭을 선택합니다.
  3. 성공률 계산을 구성할 URL 패턴을 찾으십시오.
  4. 행의 맨 오른쪽에서 오버플로 메뉴( )를 열고 성공률 구성 을 선택합니다.
  5. 화면의 지시에 따라 성공적인 응답 코드로 계산할 응답 코드를 선택하십시오.