Bu sayfada Performans İzlemeye başlamaya veya Performans İzleme özelliklerini ve araçlarını kullanmaya yönelik sorun giderme ipuçları sağlanır.
Sorun giderme için ilk kontroller
Aşağıdaki iki kontrol, daha fazla sorun giderme işleminden önce herkese önerilen genel en iyi uygulamalardır.
1. Performans olayları için günlük mesajlarını kontrol edin
Performans İzleme SDK'sının performans olaylarını yakaladığından emin olmak için günlük mesajlarınızı kontrol edin.
Hata ayıklama günlüğünü aşağıdaki şekilde etkinleştirin:
- Xcode'da (minimum v14.1), Ürün > Şema > Şemayı düzenle öğesini seçin.
- Soldaki menüden Çalıştır'ı seçin, ardından Bağımsız Değişkenler sekmesini seçin.
- Başlatma Sırasında Aktarılan Bağımsız Değişkenler bölümüne
-FIRDebugEnabled
ekleyin.
Herhangi bir hata mesajı için günlük mesajlarınızı kontrol edin.
Performans İzleme, günlük mesajlarını
Firebase/Performance
ile etiketler, böylece günlük mesajlarınızı filtreleyebilirsiniz.Performans İzleme'nin performans olaylarını günlüğe kaydettiğini gösteren aşağıdaki günlük türlerini kontrol edin:
-
Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
-
Logging network request trace: URL
-
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 olaylarını günlüğe kaydetmiyorsa sorun giderme ipuçlarını inceleyin.
2. Firebase Durum Kontrol Panelini kontrol edin
Firebase veya Performans İzleme için bilinen bir kesinti olması durumunda Firebase Durum Kontrol Panelini kontrol edin.
Performans İzlemeye Başlarken
Performans İzleme'yi ( iOS+ | Android | Web ) kullanmaya başlıyorsanız aşağıdaki sorun giderme ipuçları, Firebase'in SDK'yı algılamasıyla veya ilk performans verilerinizi Firebase konsolunda görüntülemesiyle ilgili sorunlarda yardımcı olabilir.
Firebase, uygulamanızdan etkinlik bilgilerini (uygulama etkileşimleri gibi) aldığında, Performans İzleme SDK'sını uygulamanıza başarıyla ekleyip eklemediğinizi algılayabilir. Genellikle uygulamanızı başlattıktan sonraki 10 dakika içinde Firebase konsolunun Performans kontrol panelinde "SDK algılandı" mesajı görüntülenir. Ardından, 30 dakika içinde gösterge tablosu ilk işlenen verileri görüntüler.
SDK'nın en son sürümünü uygulamanıza eklemenizin üzerinden 10 dakikadan fazla zaman geçtiyse ve hâlâ herhangi bir değişiklik göremiyorsanız, Performans İzleme'nin olayları günlüğe kaydettiğinden emin olmak için günlük iletilerinizi kontrol edin . Gecikmeli bir SDK algılama mesajıyla ilgili sorunları gidermek için aşağıda açıklandığı şekilde uygun sorun giderme adımlarını deneyin.
Hala yerel olarak geliştirme yapıyorsanız veri toplamak için daha fazla etkinlik oluşturmayı deneyin:
Bir simülatör veya test cihazı kullanarak uygulamanızı geliştirmeye devam edin.
Uygulamanızı birkaç kez arka plan ve ön plan arasında değiştirerek, ekranlar arasında gezinerek uygulamanızla etkileşim kurarak ve/veya ağ isteklerini tetikleyerek etkinlikler oluşturun.
Firebase yapılandırma dosyanızın (
Google-Service-Info.plist
) uygulamanıza doğru şekilde eklendiğinden ve dosyayı değiştirmediğinizden emin olun. Özellikle aşağıdakileri kontrol edin:Yapılandırma dosyası adına
(2)
gibi ek karakterler eklenmez.Yapılandırma dosyası XCode projenizin kökündedir ve doğru hedeflere eklenmiştir.
Yapılandırma dosyasında listelenen Firebase Apple Uygulama Kimliği (
GOOGLE_APP_ID
) uygulamanız için doğrudur. Firebase Uygulama Kimliğinizi, Proje ayarlarınızdaki Uygulamalarınız kartında bulun.
Uygulamanızdaki yapılandırma dosyasında bir sorun varsa aşağıdakileri deneyin:
Şu anda uygulamanızda bulunan yapılandırma dosyasını silin.
Yeni bir yapılandırma dosyası indirmek ve bunu Apple uygulamanıza eklemek için bu talimatları izleyin.
SDK olayları günlüğe kaydediyorsa ve her şey doğru ayarlanmış gibi görünüyorsa ancak yine de SDK algılama mesajını veya işlenmiş verileri göremiyorsanız (2 saat sonra) Firebase Desteği ile iletişime geçin .
Info.plist
dosyanızda Performans İzleme SDK'sının aşağıdaki işaretlerden herhangi biri aracılığıyla devre dışı bırakılmadığından emin olun:-
firebase_performance_collection_enabled
-
firebase_performance_collection_deactivated
-
Performans İzleme'nin çalışma zamanında devre dışı bırakılmadığından emin olun ( Swift | Obj-C ).
Uygulamanızda devre dışı bırakılmış bir şey bulamazsanız Firebase Desteği ile iletişime geçin .
Performans İzleme, performans olay verilerini Performans kontrol panelinde görüntülemeden önce işler.
"SDK algılandı" mesajının üzerinden 24 saatten fazla zaman geçtiyse ve hâlâ veri göremiyorsanız, bilinen bir kesinti olup olmadığını kontrol etmek için Firebase Durum Kontrol Panelini kontrol edin. Kesinti yoksa Firebase Desteği ile iletişime geçin .
Genel sorun giderme
SDK'yı başarıyla eklediyseniz ve uygulamanızda Performans İzleme'yi kullanıyorsanız aşağıdaki sorun giderme ipuçları, Performans İzleme özelliklerini ve araçlarını içeren genel sorunlarda yardımcı olabilir.
Performans etkinliklerine ilişkin günlük mesajlarını göremiyorsanız aşağıdaki sorun giderme adımlarını deneyin:
Info.plist
dosyanızda Performans İzleme SDK'sının aşağıdaki işaretlerden herhangi biri aracılığıyla devre dışı bırakılmadığından emin olun:-
firebase_performance_collection_enabled
-
firebase_performance_collection_deactivated
-
Performans İzleme'nin çalışma zamanında devre dışı bırakılmadığından emin olun ( Swift | Obj-C ).
Uygulamanızda devre dışı bırakılmış bir şey bulamazsanız Firebase Desteği ile iletişime geçin .
Ekran oluşturma izlerine ilişkin veriler eksikse aşağıdaki sorun giderme adımlarını deneyin:
Apple platformları SDK'sının (v10.15.0) en son sürümünü kullandığınızdan emin olun. Ekran oluşturma izleri yalnızca v5.0.0 veya üzeri sürümlerde mevcuttur.
Performans İzleme, kapsayıcı görünümü denetleyicileri (
UINavigationController
veUITabBarController
gibi) için ekran oluşturma izlemeleri oluşturmaz. Yalnızca bu ekranlara ait veriler eksikse bu beklenen bir davranıştır.
Otomatik olarak toplanan izler için performans verilerini görüyor musunuz , ancak özel kod izleri için göremiyor musunuz ? Aşağıdaki sorun giderme adımlarını deneyin:
Trace API aracılığıyla sağlanan özel kod izlemelerinin, özellikle de aşağıdakilerin kurulumunu kontrol edin:
- Özel kod izlemelerine ve özel metriklere ilişkin adlar aşağıdaki gereksinimleri karşılamalıdır: başta veya sonda boşluk olmamalıdır, başta alt çizgi (
_
) karakteri olmamalıdır ve maksimum uzunluk 32 karakterdir. - Tüm izlemelerin başlatılması ve durdurulması gerekir. Başlatılmayan, durdurulmayan veya başlatılmadan önce durdurulan herhangi bir izleme günlüğe kaydedilmeyecektir.
- Özel kod izlemelerine ve özel metriklere ilişkin adlar aşağıdaki gereksinimleri karşılamalıdır: başta veya sonda boşluk olmamalıdır, başta alt çizgi (
Performans İzleme'nin beklenen özel kod izlerini günlüğe kaydettiğinden emin olmak için günlük iletilerinizi kontrol edin .
Performans İzleme etkinlikleri günlüğe kaydediyor ancak 24 saatin ardından hiçbir veri görüntülenmiyorsa Firebase Desteği ile iletişime geçin .
Ağ isteği verileriniz eksikse aşağıdaki sorun giderme adımlarını deneyin:
Ağ kitaplığı uyumsuzluğunu kontrol edin. Performans İzleme, aşağıdaki ağ kitaplıklarını kullanan ağ isteklerine ilişkin ölçümleri otomatik olarak toplar :
- Swift için: URLSession ve URLConnection
- Objective-C için: NSURLSession ve NSURLConnection
Aşağıdakilerin farkında olun:
Kodunuzun davranışına ve kodunuz tarafından kullanılan ağ kitaplıklarına bağlı olarak, Performans İzleme yalnızca tamamlanan ağ isteklerini raporlayabilir. Bu, açık bırakılan HTTP/S bağlantılarının rapor edilmeyebileceği anlamına gelir.
Performans İzleme, geçersiz
Content-Type
üstbilgilerine sahip ağ isteklerini raporlamaz. AncakContent-Type
üstbilgileri olmayan ağ istekleri yine de kabul edilecektir.
Performans İzleme'nin ağ isteği verilerini URL kalıpları altında nasıl topladığı hakkında daha fazla bilgi edinin.
Ayrıca özel URL modellerini de deneyebilirsiniz!
SSS
Belirlediğiniz eşikler aşıldığında sizi otomatik olarak bilgilendiren, yakın zamanda kullanıma sunduğumuz uyarıların devamı olarak En Önemli Sorunlar'ı En Son Uyarılar ile değiştirdik. Sorunlar artık kullanımdan kaldırıldı ve bunların yerini uyarılar aldı.
Performans kartının üst kısmındaki uygulama seçici, Son Uyarılar altındaki uyarı girişlerini filtreler. Seçilen uygulama(lar) için yalnızca en son üç uyarı görüntülenir.
Uyarılar hakkında daha fazla bilgi edinmek için bkz. Performans sorunları için uyarı ayarlama .
Performans İzleme, tanımlanan eşikleri aşan ölçümlere yönelik uyarıları destekler. Performans ölçümlerine ilişkin bu yapılandırılabilir eşiklerle ilgili karışıklığı önlemek amacıyla, sorunlara yönelik eşikler yapılandırma özelliğini kaldırdık.
Sorunları giderme yönteminizi geliştirmek için Ayrıntılar ve Ölçümler sayfalarını yeniden tasarlanmış, merkezi bir kullanıcı arayüzü (UI) ile değiştirdik. Bu yeni sorun giderme kullanıcı arayüzü, Ayrıntılar ve Metriklerin sunduğu temel işlevlerin aynısını sunar. Sorun giderme hakkında daha fazla bilgi edinmek için bkz. Belirli bir izleme için daha fazla veri görüntüleme .
Performans İzleme, uygulamanızın kullanıcı cihazlarından performans verilerini toplar. Uygulamanızda çok sayıda kullanıcı varsa veya uygulama büyük miktarda performans etkinliği oluşturuyorsa Performans İzleme, işlenen olayların sayısını azaltmak için veri toplamayı bir aygıt alt kümesiyle sınırlandırabilir. Bu sınırlar, daha az etkinlik olsa bile metrik değerlerinin hâlâ kullanıcınızın uygulama deneyimini temsil etmesini sağlayacak kadar yüksektir.
Performans İzleme, topladığımız veri hacmini yönetmek için aşağıdaki örnekleme seçeneklerini kullanır:
Cihaz içi hız sınırlaması : Bir cihazın ani iz patlamaları göndermesini önlemek için, bir cihazdan gönderilen kod ve ağ isteği izlerinin sayısını her 10 dakikada bir 300 olayla sınırlandırıyoruz. Bu yaklaşım, cihazı büyük miktarda performans verisi gönderebilen döngülü enstrümantasyonlardan korur ve tek bir cihazın performans ölçümlerini çarpıtmasını engeller.
Dinamik örnekleme : Performans İzleme, tüm uygulama kullanıcıları genelinde günlük olarak uygulama başına kod izlemeleri için yaklaşık 100 milyon olay ve ağ isteği izlemeleri için 100 milyonluk bir sınır toplar. Rastgele bir cihazın izleri yakalayıp göndermesi gerekip gerekmediğini belirlemek için cihazlara (Firebase Remote Config kullanılarak) dinamik bir örnekleme hızı getirilir. Örnekleme için seçilmeyen bir cihaz herhangi bir olay göndermez. Dinamik örnekleme hızı uygulamaya özeldir ve toplanan verilerin genel hacminin sınırın altında kalmasını sağlayacak şekilde ayarlanır.
Kullanıcı oturumları, kullanıcının cihazından ek, ayrıntılı veriler gönderir; bu da verileri yakalamak ve göndermek için daha fazla kaynak gerektirir. Performans İzleme, kullanıcı oturumlarının etkisini en aza indirmek için oturum sayısını da kısıtlayabilir.
Sunucu tarafı hız sınırlaması : Uygulamaların örnekleme sınırını aşmamasını sağlamak amacıyla Performans İzleme, cihazlardan alınan bazı olayları bırakmak için sunucu tarafı örneklemeyi kullanabilir. Bu tür bir sınırlama, ölçümlerimizin etkinliğini değiştirmese de aşağıdakiler de dahil olmak üzere küçük model değişikliklerine neden olabilir:
- İzlerin sayısı, bir kod parçasının yürütülme sayısından farklı olabilir.
- Kodda yakından eşleştirilmiş izlemelerin her biri farklı sayıda örneğe sahip olabilir.
Sorunlar sekmesini, belirlediğiniz eşikler aşıldığında sizi otomatik olarak bilgilendiren Uyarılar özelliğinin eklenmesiyle değiştirdik. Bir eşiğin durumunu belirlemek için artık Firebase konsolunu manuel olarak kontrol etmenize gerek yok. Uyarılar hakkında bilgi edinmek için bkz. Performans sorunlarına yönelik uyarıları ayarlama .
Firebase konsolunun Performans İzleme bölümünü, Kontrol Paneli sekmesinin temel ölçümlerinizi ve tüm izlerinizi tek bir alanda görüntüleyeceği şekilde yeniden tasarladık. Yeniden tasarımın bir parçası olarak Cihazda ve Ağ sayfalarını kaldırdık.
Kontrol Paneli sekmesinin alt kısmındaki izlemeler tablosu, Cihazda ve Ağ sekmelerinde görüntülenen bilgilerin tamamına sahiptir ancak belirli bir ölçüm için izlerinizi yüzde değişime göre sıralama yeteneği de dahil olmak üzere bazı ek özellikler içerir. Belirli bir izlemeye ilişkin tüm metrikleri ve verileri görüntülemek için izlemeler tablosundaki izleme adına tıklayın.
İzlerinizi, izler tablosunun aşağıdaki alt sekmelerinde görüntüleyin:
- Ağ isteği izlemeleri (hem kullanıma hazır hem de özel) — Ağ istekleri alt sekmesi
- Özel kod izleri — Özel izler alt sekmesi
- Uygulama başlangıcı, ön plandaki uygulama, arka planda uygulama izleri — Özel izler alt sekmesi
- Ekran işleme izleri — Ekran işleme alt sekmesi
- Sayfa yükleme izleri — Sayfa yükleme alt sekmesi
İzleme tablosu ve metrikleri ve verileri görüntülemeyle ilgili ayrıntılar için konsola genel bakış sayfasını ( iOS+ | Android | Web ) ziyaret edin.
Yavaş oluşturulan kareler ve donmuş kareler, 60 Hz'lik varsayılan cihaz yenileme hızıyla hesaplanır. Bir cihazın yenileme hızı 60 Hz'den düşükse saniyede daha az kare oluşturulduğundan her karenin oluşturma süresi daha yavaş olacaktır. Daha yavaş oluşturma süreleri, daha fazla karenin daha yavaş işlenmesi veya donması nedeniyle daha yavaş veya donmuş karelerin raporlanmasına neden olabilir. Ancak cihazın yenileme hızı 60 Hz'den yüksekse her karenin oluşturma süresi daha hızlı olacaktır. Bu, daha az yavaş veya donmuş karenin raporlanmasına neden olabilir. Bu, Performans İzleme SDK'sındaki geçerli bir sınırlamadır.
Firebase Performance Monitoring için BigQuery entegrasyonunu etkinleştirdiyseniz verileriniz gün bitiminden (Pasifik Saati) 12 ila 24 saat sonra BigQuery'ye aktarılacaktır.
Örneğin, 19 Nisan'a ait veriler BigQuery'de 20 Nisan'da 12:00 ile gece yarısı arasında mevcut olacaktır (tüm tarih ve saatler Pasifik Saatine göredir).
Near real-time data processing and display
Firebase Performance Monitoring processes collected performance data as it comes in, which results in near real-time data display in the Firebase console. Processed data displays in the console within a few minutes of its collection, hence the term "near real-time".
To take advantage of near real-time data processing, make sure your app uses a real-time compatible SDK version .
To take advantage of near real-time data processing, you only need to make sure that your app uses a Performance Monitoring SDK version that's compatible with real-time data processing.
These are the real-time compatible SDK versions:
- iOS — v7.3.0 or later
- tvOS — v8.9.0 or later
- Android — v19.0.10 or later (or Firebase Android BoM v26.1.0 or later)
- Web — v7.14.0 or later
Note that we always recommend using the latest version of SDK, but any version listed above will enable Performance Monitoring to process your data in near real time.
These are the SDK versions compatible with real-time data processing:
- iOS — v7.3.0 or later
- tvOS — v8.9.0 or later
- Android — v19.0.10 or later (or Firebase Android BoM v26.1.0 or later)
- Web — v7.14.0 or later
Note that we always recommend using the latest version of SDK, but any version listed above will enable Performance Monitoring to process your data in near real time.
If your app doesn't use a real-time compatible SDK version, you will still see all your app's performance data in the Firebase console. However, the display of performance data will be delayed by roughly 36 hours from the time of its collection.
Yes! Regardless of which SDK version an app instance uses, you'll see performance data from all your users.
However, if you're looking at recent data (less than roughly 36 hours old), then the displayed data is from users of app instances using a real-time compatible SDK version. The non-recent data, though, includes performance data from all versions of your app.
Contacting Firebase Support
If you reach out to Firebase Support , always include your Firebase App ID. Find your Firebase App ID in the Your apps card of your Project settings .