Bắt đầu với Giám sát hiệu suất cho nền tảng Apple

Trước khi bắt đầu

Nếu bạn chưa có, hãy thêm Firebase vào dự án Apple của bạn .

Bước 1 : Thêm Giám sát hiệu suất vào ứng dụng của bạn

Sau khi bạn thêm SDK giám sát hiệu suất, Firebase sẽ tự động bắt đầu thu thập dữ liệu về hiển thị màn hình của ứng dụng, dữ liệu liên quan đến vòng đời ứng dụng của bạn (như thời gian bắt đầu ứng dụng ) và dữ liệu cho các yêu cầu mạng HTTP/S .

Sử dụng Trình quản lý gói Swift để cài đặt và quản lý các phần phụ thuộc của Firebase.

  1. Trong Xcode, khi dự án ứng dụng của bạn đang mở, hãy điều hướng đến File > Add Packages .
  2. Khi được nhắc, hãy thêm kho lưu trữ SDK nền tảng Firebase của Apple:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. Chọn thư viện Giám sát hiệu suất.
  5. Thêm cờ -ObjC vào phần Cờ liên kết khác trong cài đặt bản dựng của mục tiêu của bạn.
  6. Khi hoàn tất, Xcode sẽ tự động bắt đầu phân giải và tải xuống các phần phụ thuộc của bạn ở chế độ nền.

Tiếp theo, định cấu hình mô-đun Firebase:

  1. Nhập mô-đun FirebaseCore trong UIApplicationDelegate của bạn, cũng như bất kỳ mô-đun Firebase nào khác mà ủy quyền ứng dụng của bạn sử dụng. Ví dụ: để sử dụng Cloud Firestore và Xác thực:

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Nhanh

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Mục tiêu-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. Định cấu hình phiên bản chia sẻ FirebaseApp trong phương thức application(_:didFinishLaunchingWithOptions:) của đại biểu ứng dụng của bạn:

    SwiftUI

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

    Nhanh

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

    Mục tiêu-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. Nếu bạn đang sử dụng SwiftUI, bạn phải tạo một đại biểu ứng dụng và đính kèm nó vào cấu trúc App của mình thông qua UIApplicationDelegateAdaptor hoặc NSApplicationDelegateAdaptor . Bạn cũng phải tắt tính năng chuyển giao ứng dụng. Để biết thêm thông tin, hãy xem hướng dẫn SwiftUI .

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. Biên dịch lại ứng dụng của bạn.

Bước 2 : Tạo các sự kiện hiệu suất để hiển thị dữ liệu ban đầu

Firebase bắt đầu xử lý các sự kiện khi bạn thêm SDK vào ứng dụng của mình thành công. Nếu bạn vẫn đang phát triển cục bộ, hãy tương tác với ứng dụng của bạn để tạo sự kiện cho việc thu thập và xử lý dữ liệu ban đầu.

  1. Tiếp tục phát triển ứng dụng của bạn bằng trình mô phỏng hoặc thiết bị thử nghiệm.

  2. Tạo sự kiện bằng cách chuyển đổi ứng dụng của bạn giữa nền và nền trước nhiều lần, tương tác với ứng dụng của bạn bằng cách điều hướng trên các màn hình và/hoặc kích hoạt các yêu cầu mạng.

  3. Chuyển đến trang tổng quan Hiệu suất của bảng điều khiển Firebase. Bạn sẽ thấy hiển thị dữ liệu ban đầu của mình trong vòng vài phút.

    Nếu bạn không thấy hiển thị dữ liệu ban đầu của mình, hãy xem lại các mẹo khắc phục sự cố .

Bước 3 : (Tùy chọn) Xem thông báo nhật ký cho các sự kiện hiệu suất

  1. Bật tính năng ghi nhật ký gỡ lỗi như sau:

    1. Trong Xcode (tối thiểu v14.1), chọn Sản phẩm > Lược đồ > Chỉnh sửa lược đồ .
    2. Chọn Chạy từ menu bên trái, sau đó chọn tab Đối số .
    3. Trong phần Đối số được truyền khi khởi chạy , hãy thêm -FIRDebugEnabled .
  2. Kiểm tra thông điệp tường trình của bạn xem có thông báo lỗi nào không.

  3. Giám sát hiệu suất gắn thẻ thông điệp tường trình của nó với Firebase/Performance để bạn có thể lọc thông điệp tường trình của mình.

  4. Kiểm tra các loại nhật ký sau để biết rằng Giám sát hiệu suất đang ghi nhật ký các sự kiện hiệu suất:

    • Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. Nhấp vào URL để xem dữ liệu của bạn trong bảng điều khiển Firebase. Có thể mất vài phút để dữ liệu cập nhật trên trang tổng quan.

Nếu ứng dụng của bạn không ghi nhật ký các sự kiện hiệu suất, hãy xem lại mẹo khắc phục sự cố .

Bước 4 : (Tùy chọn) Thêm giám sát tùy chỉnh cho mã cụ thể

Để giám sát dữ liệu hiệu suất được liên kết với mã cụ thể trong ứng dụng của bạn, bạn có thể thiết lập các dấu vết mã tùy chỉnh .

Với dấu vết mã tùy chỉnh, bạn có thể đo khoảng thời gian ứng dụng của bạn hoàn thành một tác vụ hoặc một nhóm tác vụ cụ thể, chẳng hạn như tải một tập hợp hình ảnh hoặc truy vấn cơ sở dữ liệu của bạn. Số liệu mặc định cho dấu vết mã tùy chỉnh là thời lượng của nó, nhưng bạn cũng có thể thêm số liệu tùy chỉnh, chẳng hạn như số lần truy cập bộ đệm và cảnh báo bộ nhớ.

Trong mã của mình, bạn xác định phần đầu và phần cuối của dấu vết mã tùy chỉnh (và thêm bất kỳ số liệu tùy chỉnh mong muốn nào) bằng cách sử dụng API do SDK giám sát hiệu suất cung cấp.

Hãy truy cập Thêm giám sát cho mã cụ thể để tìm hiểu thêm về các tính năng này và cách thêm chúng vào ứng dụng của bạn.

Bước 5 : Triển khai ứng dụng của bạn sau đó xem xét kết quả

Sau khi xác thực Giám sát hiệu suất bằng trình mô phỏng Xcode và một hoặc nhiều thiết bị thử nghiệm, bạn có thể triển khai phiên bản cập nhật của ứng dụng cho người dùng của mình.

Bạn có thể theo dõi dữ liệu hiệu suất trong bảng điều khiển Hiệu suất của bảng điều khiển Firebase.

Các vấn đề đã biết

  • Giám sát hiệu suất đã biết các vấn đề tương thích với GTMSQLite. Chúng tôi khuyên bạn không nên sử dụng Giám sát hiệu suất với các ứng dụng sử dụng GTMSQLite.
  • Phương thức thay đổi sau khi gọi FirebaseApp.configure() có thể ảnh hưởng đến SDK giám sát hiệu suất.
  • Các sự cố đã biết với Trình mô phỏng iOS 8.0-8.2 ngăn Giám sát hiệu suất ghi lại các sự kiện hiệu suất. Các sự cố này đã được khắc phục trong Trình mô phỏng iOS 8.3 và các phiên bản mới hơn.
  • Các kết nối được thiết lập bằng cách sử dụng backgroundSessionConfiguration của NSURLSession sẽ hiển thị thời gian kết nối lâu hơn dự kiến. Các kết nối này được thực hiện ngoài quy trình và thời gian phản ánh các sự kiện gọi lại trong quá trình.

Bước tiếp theo