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: Uygulamanıza Performance Monitoring ekleyin

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

Firebase bağımlılarını yüklemek ve yönetmek için Swift Package Manager'ı kullanın.

Firebase SDK'larını Apple projenize eklemenin farklı yolları (ör. doğrudan çerçeveleri içe aktarma ve CocoaPods kullanma) hakkında bilgi edinmek için
  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ü ve uygulama temsilcinizin kullandığı diğer tüm Firebase modüllerini UIApplicationDelegate dosyanıza aktarın. Örneğin, Cloud Firestore ve Authentication 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. Uygulama temsilcinizin application(_:didFinishLaunchingWithOptions:) yönteminde bir FirebaseApp shared instance yapılandırın:

    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şturmanız ve UIApplicationDelegateAdaptor veya NSApplicationDelegateAdaptor aracılığıyla App yapınıza eklemeniz gerekir. Ayrıca uygulama temsilcisi değiştirme işlemini de devre dışı bırakmanız gerekir. 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ıyla eklediğinizde etkinlikleri işlemeye başlar. Hâlâ yerel olarak geliştirme yapıyorsanız ilk veri toplama ve işleme için etkinlikler oluşturmak üzere uygulamanızla etkileşim kurun.

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

  2. Uygulamanızı arka plan ile ö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 verileriniz birkaç dakika içinde gösterilir.

    İlk verilerinizin gösterilmediğini görürseniz sorun giderme ipuçlarını inceleyin.

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) Product > Scheme > Edit scheme'i (Şemayı düzenle) seçin.
    2. Soldaki menüden Çalıştır'ı, ardından Bağımsız değişkenler sekmesini seçin.
    3. Arguments Passed on Launch (Başlatmada İletilen Parametreler) bölümüne -FIRDebugEnabled ifadesini ekleyin.
  2. Günlük mesajlarınızda hata mesajı olup olmadığını kontrol edin.

  3. Performance Monitoring, günlük mesajlarınızı filtreleyebilmeniz için günlük mesajlarını Firebase/Performance ile etiketler.

  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. Verilerin kontrol panelinde güncellenmesi birkaç dakika sürebilir.

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

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

Uygulamanızdaki belirli kodla ilişkili performans verilerini izlemek için özel kod izlerini kullanabilirsiniz.

Özel kod izleme özelliğiyle, uygulamanızın belirli bir görevi veya görev grubunu (ör. bir resim grubunu yükleme ya da veritabanınızı sorgulama) tamamlamasının ne kadar sürdüğünü ölçebilirsiniz. Özel kod izleme için varsayılan metrik, izlemenin süresidir ancak önbelleğe isabet ve bellek uyarıları gibi özel metrikler de ekleyebilirsiniz.

Kodunuzda, Performance Monitoring SDK'sı tarafından sağlanan API'yi kullanarak özel kod izinin başlangıç ve bitişini tanımlar (ve istediğiniz özel metrikleri eklersiniz).

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ın ve ardından sonuçları inceleyin

Xcode simülasyon aracını ve bir veya daha fazla test cihazını kullanarak Performance Monitoring'ü doğruladıktan sonra 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 bilinen uyumluluk sorunları yaşar. GTMSQLite kullanan uygulamalarda Performance Monitoring kullanmamanızı öneririz.
  • FirebaseApp.configure() çağrıldıktan sonra yöntem karıştırma işlemi, Performance Monitoring SDK'sını etkileyebilir.
  • iOS 8.0-8.2 simülatörüyle ilgili bilinen sorunlar, Performance Monitoring'ün performans etkinliklerini yakalamasını engelliyor. Bu sorunlar iOS 8.3 Simülasyon Aracı ve sonraki sürümlerde düzeltilmiştir.
  • NSURLSession'in backgroundSessionConfiguration kullanılarak kurulan bağlantılar, beklenenden daha uzun bağlantı süreleri gösterir. Bu bağlantılar işlem dışında yürütülür ve zamanlamalar, işlem içi geri çağırma etkinliklerini yansıtır.

Sonraki adımlar