성능 문제에 관한 알림 설정

코드 변경 또는 네트워크 요청으로 인해 앱 성능이 저하되는 경우 Performance Monitoring 알림을 사용하여 프로젝트 구성원에게 알립니다.

이벤트 성능이 설정된 기준을 초과하면 사용자에게 알림을 보내도록 앱 알림을 설정하고 맞춤설정할 수 있습니다.

알림을 트리거하는 요인

앱 측정항목이 Firebase Console에서 지정된 백분위수(해당하는 경우)에서 정의된 기준을 초과하면 알림이 트리거됩니다. 알림은 앱에서 실시간 호환 SDK 버전을 사용하는 경우에만 트리거됩니다.

앱 시작 시간

앱 시작 시간에 대한 알림을 구성할 경우 다음 조건이 모두 충족되면 알림이 트리거됩니다.

  • (지난 1시간 동안 앱의 최신 버전에서) Firebase가 _app_start trace의 샘플을 100개 이상 기록했습니다.
  • _app_start trace 지속 시간이 앱에서 정의한 기준(지난 1시간 동안 및 구성된 백분위수)을 초과했습니다.
  • 이전에 최신 앱 버전에서 동일한 기준에 대해 트리거된 알림이 없습니다.

커스텀 코드 trace

커스텀 코드 trace 측정항목에 대한 알림을 구성할 경우 다음 조건이 모두 충족되면 알림이 트리거됩니다.

  • 지난 1시간 동안 앱의 최신 버전에서 Firebase가 커스텀 코드 trace의 샘플을 100개 이상 기록했습니다.
  • trace 지속 시간이 앱에서 정의한 기준(지난 1시간 동안 및 구성된 백분위수)을 초과했습니다.
  • (iOS+ 및 Android만 해당) 이전에 최신 앱 버전에서 동일한 기준에 대해 이전에 트리거된 알림이 없습니다.
  • (웹만 해당) 지난 3일 동안 동일한 기준에 대해 이전에 트리거된 알림이 없습니다.

네트워크 요청

네트워크 요청 측정항목에 대한 알림을 구성할 경우 다음 조건이 모두 충족되면 알림이 트리거됩니다.

  • 지난 1시간 동안 모든 버전의 앱에서 Firebase가 URL 패턴과 일치하는 샘플을 100개 이상 기록했습니다.
  • 지난 1시간 동안 측정항목의 집계된 값이 정의된 기준을 초과했습니다.
    • 응답 시간: 집계된 값이 구성된 백분위수의 설정된 기준을 초과했습니다.
    • 성공률: (iOS+/Android만 해당) 모든 사용자에 대해 집계된 값이 설정된 기준 미만입니다.
  • 지난 3일 이내 동일한 기준에 대해 이전에 트리거된 알림이 없습니다.

화면 렌더링

화면 렌더링 측정항목에 대한 알림을 구성할 경우 다음 조건이 모두 충족되면 알림이 트리거됩니다.

  • 지난 1시간 동안 앱의 최신 버전에서 Firebase가 화면 렌더링 샘플을 100개 이상 기록했습니다.
  • 지난 1시간 동안 측정항목의 집계된 값이 정의된 기준을 초과했습니다.
    • 정지된 프레임: 집계된 값이 설정된 기준을 초과했습니다.
    • 느린 프레임: 집계된 값이 설정된 기준을 초과했습니다.
  • 이전에 최신 앱 버전에서 동일한 기준에 대해 트리거된 알림이 없습니다.

페이지 로드

페이지 로드 측정항목에 대한 알림을 구성할 경우 다음 조건이 모두 충족되면 알림이 트리거됩니다.

  • 지난 1시간 동안 앱의 최신 버전에서 Firebase가 페이지 로드의 샘플을 100개 이상 기록했습니다.
  • 지난 1시간 동안 및 구성된 백분위수에서 측정항목의 집계된 값이 정의된 기준을 초과했습니다.
    • 최초 입력 반응 시간: 집계된 값이 설정된 기준과 구성된 백분위수를 초과했습니다.
    • 콘텐츠가 포함된 첫 페인트: 집계된 값이 설정된 기준과 구성된 백분위수를 초과했습니다.
    • 첫 페인트: 집계된 값이 설정된 기준과 구성된 백분위수를 초과했습니다.
  • 지난 3일 이내 동일한 기준에 대해 이전에 트리거된 알림이 없습니다.

알림 구성, 기본 백분위수에 대해 자세히 알아보고 특정 유형의 trace 및 측정항목에 대한 알림을 설정하기 위한 권장사항에 대해 알아보세요.

다른 성능 측정항목 또는 Slack, Jira, PagerDuty와의 기본 제공 Firebase 통합에 대한 알림은 Performance Monitoring 알림에 사용할 수 없습니다.

알림 수신

기본 알림 받기

기본적으로 Firebase는 Performance Monitoring 알림을 이메일로 보낼 수 있습니다.

이 기본 메커니즘을 통해 Performance Monitoring 알림을 받으려면 firebaseperformance.config.update 권한이 있어야 합니다. 다음 역할에는 기본적으로 다음과 같은 필수 권한이 포함되어 있습니다.

알림 및 해당 설정은 프로젝트 전체에서 적용됩니다. 즉, 기본적으로 이메일 그룹이 아니며 알림을 받는 데 필요한 권한이 있는 모든 프로젝트 구성원은 성능 알림이 트리거될 때 이메일 알림을 받습니다.

내 계정의 알림 사용 설정/사용 중지

내 계정의 경우 다른 프로젝트 구성원에게 영향을 주지 않고 Performance Monitoring 알림을 사용 설정하거나 사용 중지할 수 있습니다. 알림을 받으려면 여전히 필수 권한이 필요합니다.

Performance Monitoring 알림을 사용 설정 또는 사용 중지하려면 다음 단계를 따르세요.

  1. Firebase Console의 오른쪽 상단에서 Firebase 알림으로 이동합니다.
  2. 그런 다음 설정으로 이동하여 Performance Monitoring 알림에 대한 계정 환경설정을 지정합니다.

서드 파티 서비스에 대한 고급 알림 설정하기

Firebase용 Cloud Functions를 사용하여 원하는 팀 알림 채널에 Performance Monitoring 알림을 보낼 수도 있습니다. 예를 들어 느린 앱 시작 시간에 대한 알림 이벤트를 캡처하고 Discord, Slack, Jira와 같은 서드 파티 서비스에 알림 정보를 게시하는 함수를 작성할 수 있습니다.

Firebase용 Cloud Functions를 사용하여 고급 알림 기능을 설정하려면 다음 단계를 따르세요.

  1. 다음 태스크를 포함한 Firebase용 Cloud Functions를 설정합니다.

    1. Node.js용 또는 Python용 개발 환경을 설정합니다.
    2. Firebase CLI를 설치하고 로그인합니다.
    3. Firebase CLI를 사용하여 Firebase용 Cloud Functions를 초기화합니다.
  2. Performance Monitoring의 알림 이벤트를 캡처하고 이벤트 페이로드를 처리하는 함수를 작성하고 배포합니다(예: Discord에서 메시지에 알림 정보 게시).

캡처할 수 있는 모든 성능 알림 이벤트에 대한 자세한 내용은 Performance Monitoring 알림 참조 문서를 확인하세요.

잘못된 알림 자동 삭제

Performance Monitoring은 알림을 검증하여 데이터가 유효하고 알림이 사용 중인지 확인합니다. 다음 중 하나에 해당하는 경우 알림이 유효한 것으로 간주됩니다.

  • Performance Monitoring이 지난 90일 동안 데이터를 수신한 리소스 ID에 대한 알림이 생성됩니다.
  • 최근에 커스텀 URL 패턴에 대한 알림이 생성되었습니다. 커스텀 URL 패턴을 만들고 알림을 설정한 후 90일 이내에 해당 패턴의 데이터를 전송해야 합니다. 90일 기간 내에 전송된 데이터가 없으면 Performance Monitoring이 알림을 삭제합니다. 커스텀 URL 패턴에 대한 자세한 내용은 고객 URL 패턴의 데이터 집계를 참조하세요.

이러한 조건 중 하나라도 충족되지 않으면 Performance Monitoring에서 알림을 삭제합니다.

알림 구성

Performance Monitoring 알림을 구성하려면 firebaseperformance.config.update 권한이 있어야 합니다. 기본적으로 Firebase 성능 관리자, Firebase 품질 관리자, Firebase 관리자, 프로젝트 소유자 또는 편집자의 역할에 이러한 필수 권한이 포함되어 있습니다.

최신 Performance Monitoring SDK를 아직 추가하지 않은 경우 앱에 추가합니다. 자세한 내용은 , Android, Apple, Flutter 플랫폼 시작 가이드를 참조하세요.

등록된 각 앱에서 Trace 테이블 또는 대시보드 보고서 카드를 사용하여 모니터링할 각 측정항목에 대한 알림을 구성합니다. 각 앱의 알림 설정과 기준이 서로 다를 수 있습니다(알림이 전혀 없을 수도 있음).

Trace 테이블에서 알림 구성

  1. Firebase Console의 Performance Monitoring 대시보드으로 이동한 후 알림을 구성할 앱을 선택합니다.

  2. 화면 하단에 있는 Trace 테이블까지 아래로 스크롤합니다.

  3. 알림을 설정할 trace 유형의 탭을 선택한 다음 해당 행을 찾습니다.

  4. 행의 맨 오른쪽에 있는 더보기 메뉴()를 열고 알림 설정을 선택합니다.

  5. 화면에 표시된 안내에 따라 앱의 알림 기준과 백분위수(해당하는 경우)를 설정하거나 알림을 사용 설정/사용 중지합니다. 기본 백분위수가 Android 및 iOS는 90번째이고, 웹 앱은 75번째입니다. 기본 백분위수에 대한 자세한 내용은 대시보드에서 주요 측정항목 추적을 참조하세요.

대시보드 보고서 카드에서 알림 구성

  1. Firebase Console의 Performance Monitoring 대시보드으로 이동한 후 알림을 구성할 앱을 선택합니다.

  2. 보고서 카드 탭에서 알림을 구성하려는 측정항목 카드를 찾습니다.

  3. 원하는 측정항목 카드에서 더보기 메뉴()를 열고 알림 설정을 선택합니다.

  4. 화면에 표시된 안내에 따라 앱의 알림 기준과 백분위수(해당하는 경우)를 설정하거나 알림을 사용 설정/사용 중지합니다. 기본 백분위수가 Android 및 iOS는 90번째이고, 웹 앱은 75번째입니다. 기본 백분위수에 대한 자세한 내용은 대시보드에서 주요 측정항목 추적을 참조하세요.

성능 알림 설정을 위한 권장사항

네트워크 요청

Firebase는 URL 패턴과 유사한 네트워크 요청의 데이터를 집계하며, 이는 다음 중 하나일 수 있습니다.

  • 커스텀 URL 패턴이라고 하는 사용자 정의 패턴

  • 자동 URL 패턴이라고 하는 Firebase 파생 패턴
    이러한 패턴은 앱의 최신 사용 행태에 따라 시간이 지나면서 변경될 수 있습니다.

커스텀 URL 패턴에 대한 알림 설정

구성한 모든 커스텀 URL 패턴에 대해 알림을 설정하는 것이 좋습니다. Firebase는 요청을 커스텀 URL 패턴과 일치시키려고 우선적으로 시도하므로 동일한 URL 패턴에는 유사한 요청이 보다 일관적으로 매핑됩니다. 따라서 앱에 중요한 특정 요청 패턴을 미리 식별함으로써 팀에게 보다 의미 있고 효과적인 커스텀 URL 패턴 알림을 만들 수 있습니다.

자동 URL 패턴에 대한 알림 설정

자동 URL 패턴에 대한 알림을 설정할 때는 자동 URL 패턴이 며칠간 안정적인지 확인해야 합니다. 시간이 지남에 따라 자동 URL 패턴은 변경될 수 있으며 알림 구성은 새 URL 패턴으로 이월되지 않습니다. 이 경우 중요한 패턴에 대한 알림이 잘못되거나 누락될 수 있습니다. 커스텀 URL 패턴을 만들어 해당 패턴이 안정적인지 확인하는 방법도 있습니다.

웹페이지 로드

웹 측정항목을 측정할 때 권장되는 기준은 Core Web Vitals 문서를 참조하세요.

화면 렌더링

최적의 앱 환경을 보장하려면 사용자 세션에 느리고 정지된 프레임이 없어야 합니다. Performance Monitoring에서는 정지된 프레임에 대한 알림을 1% 보다 크게 설정하고, 느린 프레임에 대한 알림을 5% 보다 크게 설정하는 것이 좋습니다. 이러한 값은 성능 알림을 구성하는 동안 기본 설정으로 표시됩니다. 과도하게 느리거나 정지된 프레임 및 기타 앱 성능 권장사항에 관해 자세히 알아보려면 Google Play 안내를 참조하세요.