Firebase Summit에서 발표된 모든 내용을 살펴보고 Firebase로 앱을 빠르게 개발하고 안심하고 앱을 실행하는 방법을 알아보세요. 자세히 알아보기

Apple 플랫폼용 성능 모니터링 시작하기

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

시작하기 전에

아직 추가하지 않았다면 Apple 프로젝트에 Firebase를 추가합니다 .

1단계 : 앱에 성능 모니터링 추가

Performance Monitoring SDK를 추가하면 Firebase는 앱의 화면 렌더링 을 위한 데이터, 앱의 수명 주기와 관련된 데이터(예: 앱 시작 시간 ), HTTP/S 네트워크 요청 에 대한 데이터 수집을 자동으로 시작합니다.

Swift 패키지 관리자를 사용하여 Firebase 종속 항목을 설치하고 관리합니다.

  1. Xcode에서 앱 프로젝트를 연 상태에서 파일 > 패키지 추가 로 이동합니다.
  2. 메시지가 표시되면 Firebase Apple 플랫폼 SDK 저장소를 추가합니다.
  3.   https://github.com/firebase/firebase-ios-sdk
  4. 성능 모니터링 라이브러리를 선택합니다.
  5. 완료되면 Xcode는 백그라운드에서 종속성을 자동으로 해결하고 다운로드하기 시작합니다.

다음으로 Firebase 모듈을 구성합니다.

  1. UIApplicationDelegate 에서 FirebaseCore 모듈과 앱 대리자가 사용하는 다른 Firebase 모듈 을 가져옵니다. 예를 들어 Cloud Firestore 및 인증을 사용하려면 다음 안내를 따르세요.

    빠른

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    오브젝티브-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. 앱 대리자의 application(_:didFinishLaunchingWithOptions:) 메서드에서 FirebaseApp 공유 인스턴스를 구성합니다.

    빠른

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    오브젝티브-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  1. 앱을 다시 컴파일합니다.

2단계 : 초기 데이터 표시를 위한 성능 이벤트 생성

앱에 SDK를 성공적으로 추가하면 Firebase에서 이벤트 처리를 시작합니다. 아직 로컬에서 개발 중인 경우 앱과 상호 작용하여 초기 데이터 수집 및 처리를 위한 이벤트를 생성합니다.

  1. 시뮬레이터 또는 테스트 장치를 사용하여 앱을 계속 개발하십시오.

  2. 앱을 백그라운드와 포그라운드 간에 여러 번 전환하고, 화면을 탐색하여 앱과 상호 작용하고, 네트워크 요청을 트리거하여 이벤트를 생성합니다.

  3. Firebase 콘솔의 성능 대시보드 로 이동합니다. 몇 분 안에 초기 데이터가 표시되어야 합니다.

    초기 데이터가 표시되지 않으면 문제 해결 팁 을 검토하십시오.

3단계 : (선택 사항) 성능 이벤트에 대한 로그 메시지 보기

  1. 다음과 같이 디버그 로깅을 활성화합니다.

    1. Xcode(최소 v13.3.1)에서 제품 > 구성표 > 구성표 편집 을 선택합니다.
    2. 왼쪽 메뉴에서 실행 을 선택한 다음 인수 탭을 선택합니다.
    3. 실행 시 전달된 인수 섹션에서 -FIRDebugEnabled 를 추가하십시오.
  2. 오류 메시지가 있는지 로그 메시지를 확인하십시오.

  3. Performance Monitoring은 로그 메시지를 필터링할 수 있도록 Firebase/Performance 로 로그 메시지에 태그를 지정합니다.

  4. 성능 모니터링이 성능 이벤트를 기록하고 있음을 나타내는 다음 유형의 로그를 확인하십시오.

    • Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. URL을 클릭하면 Firebase 콘솔에서 데이터를 볼 수 있습니다. 대시보드에서 데이터가 업데이트되는 데 몇 분 정도 걸릴 수 있습니다.

앱이 성능 이벤트를 기록하지 않는 경우 문제 해결 팁 을 검토하세요.

4단계 : (선택 사항) 특정 코드에 대한 사용자 지정 모니터링 추가

앱의 특정 코드와 관련된 성능 데이터를 모니터링하기 위해 사용자 지정 코드 추적 을 계측할 수 있습니다.

사용자 지정 코드 추적을 사용하면 앱에서 이미지 집합 로드 또는 데이터베이스 쿼리와 같은 특정 작업 또는 작업 집합을 완료하는 데 걸리는 시간을 측정할 수 있습니다. 사용자 지정 코드 추적의 기본 메트릭은 기간이지만 캐시 적중 및 메모리 경고와 같은 사용자 지정 메트릭을 추가할 수도 있습니다.

코드에서 Performance Monitoring SDK에서 제공하는 API를 사용하여 사용자 지정 코드 추적의 시작과 끝을 정의하고 원하는 사용자 지정 메트릭을 추가합니다.

이러한 기능과 앱에 추가하는 방법에 대해 자세히 알아보려면 특정 코드에 대한 모니터링 추가를 방문하세요.

5단계 : 앱 배포 후 결과 검토

Xcode 시뮬레이터와 하나 이상의 테스트 장치를 사용하여 성능 모니터링을 검증한 후에는 업데이트된 버전의 앱을 사용자에게 배포할 수 있습니다.

Firebase 콘솔의 성능 대시보드 에서 성능 데이터를 모니터링할 수 있습니다.

알려진 문제

  • Performance Monitoring에는 GTMSQLite와의 알려진 호환성 문제가 있습니다. GTMSQLite를 사용하는 앱에서는 Performance Monitoring을 사용하지 않는 것이 좋습니다.
  • FirebaseApp.configure() 를 호출한 후 메서드를 재구성하면 Performance Monitoring SDK를 방해할 수 있습니다.
  • iOS 8.0-8.2 시뮬레이터의 알려진 문제로 인해 성능 모니터링이 성능 이벤트를 캡처하지 못합니다. 이러한 문제는 iOS 8.3 시뮬레이터 및 이후 버전에서 수정되었습니다.
  • NSURLSession의 backgroundSessionConfiguration 을 사용하여 설정된 연결은 예상 연결 시간보다 오래 표시됩니다. 이러한 연결은 out-of-process로 실행되며 타이밍은 in-process 콜백 이벤트를 반영합니다.

다음 단계