Apple platformları için Performance Monitoring'i kullanmaya başlayın

Başlamadan önce

Henüz yapmadıysanız Firebase'i Apple projenize ekleyin.

1. Adım: Performance Monitoring uygulamasını uygulamanıza ekleyin

Performance Monitoring SDK'sı eklendikten sonra, Firebase otomatik olarak veri toplamaya başlar uygulamanızın ekran oluşturmaya ait verileri, yaşam döngüsüyle (ör. uygulama başlangıç zamanı) ve HTTP/S ağ istekleri ile ilgili veriler.

Firebase bağımlılıklarını yükleyip yönetmek için Swift Package Manager'ı kullanın.

  1. Xcode'da, uygulamanız açıkken Dosya > Paket Ekle'ye gidin.
  2. İstendiğinde Firebase Apple platformlar SDK deposunu ekleyin:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. Performance Monitoring kitaplığını seçin.
  5. -ObjC işaretini, hedefinizin derleme ayarlarının Diğer Bağlantı Oluşturucu İşaretleri bölümüne ekleyin.
  6. İşlem tamamlandığında Xcode, arka planda bağımlılarınızı otomatik olarak çözümlemeye ve indirmeye başlar.

Ardından Firebase modülünü yapılandırın:

  1. FirebaseCore modülünü UIApplicationDelegate ve diğer Yetki verdiğiniz uygulamanın kullandığı Firebase modülleri. Örneğin, Cloud Firestore ve Authentication özelliklerini kullanmak için:

    SwiftUI

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

    Swift

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. Şunu yapılandır: FirebaseApp paylaşılan örneğinizin application(_:didFinishLaunchingWithOptions:) yöntemi:

    SwiftUI

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

    Swift

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

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. SwiftUI kullanıyorsanız bir uygulama temsilcisi oluşturup bunu eklemeniz gerekir App struct'ınıza UIApplicationDelegateAdaptor veya NSApplicationDelegateAdaptor. Uygulama yetkisi kaydırmayı da devre dışı bırakmanız gerekir. Örneğin, daha fazla bilgi için SwiftUI talimatlarına bakın.

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. Uygulamanızı yeniden derleyin.

2. Adım: İlk veri görüntüleme için performans etkinlikleri oluşturun

Firebase, SDK'yı uygulamanıza başarılı bir şekilde eklediğinizde etkinlikleri işlemeye başlar: uygulamasını indirin. Hâlâ yerel olarak geliştirme yapıyorsanız etkinlikleri gözden geçirin.

  1. Bir simülatör veya test cihazı kullanarak uygulamanızı geliştirmeye devam edin.

  2. Uygulamanızı arka plan ve ön plan arasında birkaç kez değiştirerek, ekranlar arasında gezinerek uygulamanızla etkileşime geçerek ve/veya ağ isteklerini tetikleyerek etkinlikler oluşturun.

  3. Firebase konsolunun Performans gösterge tablosuna gidin. İlk verilerinizin birkaç dakika.

    İlk verileriniz gösterilmiyorsa sorun giderme ipuçları.

3. Adım: (İsteğe bağlı) Performans etkinlikleriyle ilgili günlük mesajlarını görüntüleme

  1. Hata ayıklama günlük kaydını aşağıdaki gibi etkinleştirin:

    1. Xcode'da (minimum sürüm 15.2) Ürün > Dizi > Diziyi düzenle'yi seçin.
    2. Soldaki menüden Çalıştır'ı, ardından Bağımsız değişkenler sekmesini seçin.
    3. Lansmanda İletilen Bağımsız Değişkenler bölümüne -FIRDebugEnabled ekleyin.
  2. Hata mesajı olup olmadığını görmek için günlük mesajlarınızı kontrol edin.

  3. Performance Monitoring, günlük mesajlarını Firebase/Performance ile etiketler. Böylece şunları yapabilirsiniz: günlük mesajlarınızı filtreleyebilirsiniz.

  4. Performance Monitoring'ün performans etkinliklerini kaydettiğini belirten aşağıdaki günlük türlerini kontrol edin:

    • Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. Verilerinizi Firebase konsolunda görüntülemek için URL'yi tıklayın. Birkaç dakika anlarda etkinleştirmeniz gerekir.

Uygulamanız performans etkinliklerini günlüğe kaydetmiyorsa sorun giderme ipuçları.

4. Adım: (İsteğe bağlı) Belirli bir kod için özel izleme ekleyin

Uygulamanızdaki belirli bir kodla ilişkilendirilmiş performans verilerini izlemek için araç özel kod izleri.

Özel kod izleme ile uygulamanızın ne kadar sürede tamamlandığını ölçebilirsiniz. belirli bir görev veya görev kümesi (örneğin, bir dizi resim yüklemek veya yardımcı olur. Özel kod izleme için varsayılan metrik süresidir ancak önbellek isabetleri ve bellek uyarıları gibi özel metrikler de ekleyebilirsiniz.

Kodunuzda, özel bir kod izlemenin başlangıcını ve sonunu tanımlarsınız istediğiniz özel metrikleri ekleyebilirsiniz) Performance Monitoring SDK tarafından sağlanan API'yi kullanabilirsiniz.

Bu özellikler ve uygulamanıza nasıl eklenecekleri hakkında daha fazla bilgi edinmek için Belirli kod için izleme ekleme başlıklı makaleyi inceleyin.

5. Adım: Uygulamanızı dağıtıp sonuçları inceleyin

Xcode simülatörü ve bir veya daha fazla aracı kullanarak Performance Monitoring öğesini doğruladıktan sonra test cihazlarında uygulamanızın güncellenmiş sürümünü kullanıcılarınıza dağıtabilirsiniz.

Performans verilerini Firebase konsolunun Performans kontrol panelinde izleyebilirsiniz.

Bilinen sorunlar

  • Performance Monitoring, GTMSQLite ile ilgili bilinen uyumluluk sorunlarına sahiptir. Önerilerimiz GTMSQLite kullanan uygulamalarla Performance Monitoring kullanılıyor.
  • FirebaseApp.configure() çağrıldıktan sonra yöntemin hızlıca kaydırılması çakışmaya neden olabilir Performance Monitoring SDK'sı.
  • iOS 8.0-8.2 Simülatörü ile ilgili bilinen sorunlar Performance Monitoring ürününün performans etkinliklerini yakalayabilirsiniz. iOS 8.3 Simülatörü'nde bu sorunlar düzeltilmiştir ve sonraki sürümler.
  • NSURLSession'in backgroundSessionConfiguration kullanılarak kurulan bağlantılar, beklenenden daha uzun bağlantı süreleri gösterir. Bu bağlantılar devam eder ve zamanlamalar işlem içi geri çağırma etkinliklerini yansıtır.

Sonraki adımlar