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.
Tarayıcınızın geliştirici araçlarını açın (örneğin, Chrome Geliştirici Araçları için Ağ sekmesi veya Firefox için Ağ İzleyicisi ).
Web uygulamanızı tarayıcıda yenileyin.
Herhangi bir hata mesajı için günlük mesajlarınızı kontrol edin.
Birkaç saniye sonra tarayıcınızın geliştirici araçlarında
firebaselogging.googleapis.com
adresine yapılacak bir ağ araması arayın. Bu ağ çağrısının varlığı, tarayıcının performans verilerini Firebase'e gönderdiğini gösterir.
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:
Web uygulamanızı yerel bir ortamda yayınlayın ve görüntüleyin.
Siteniz için alt sayfalar yükleyerek, uygulamanızla etkileşimde bulunarak ve/veya ağ isteklerini tetikleyerek etkinlikler oluşturun. Sayfa yüklendikten sonra tarayıcı sekmesini en az 10 saniye açık tuttuğunuzdan emin olun.
Firebase yapılandırma nesnenizin uygulamanıza doğru şekilde eklendiğinden ve nesneyi değiştirmediğinizden emin olun. Özellikle aşağıdakileri kontrol edin:
- Config nesnesindeki Firebase Web Uygulaması Kimliği (
appId
), uygulamanız için doğrudur. Firebase Uygulama Kimliğinizi, Proje ayarlarınızdaki Uygulamalarınız kartında bulun.
Uygulamanızdaki config nesnesinde bir sorun varsa aşağıdakileri deneyin:
Şu anda uygulamanızda bulunan yapılandırma nesnesini silin.
Yeni bir yapılandırma nesnesi edinmek ve bunu web uygulamanıza eklemek için bu talimatları izleyin.
- Config nesnesindeki Firebase Web Uygulaması Kimliği (
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 .
Performans İzleme SDK'sının uygulamanızda doğru şekilde başlatıldığından emin olun.
Performans İzleme SDK'sının aşağıdaki işaret aracılığıyla devre dışı bırakılmadığından emin olun:
-
performance.instrumentationEnabled
-
Tarayıcınızın önbelleğe alma özelliğinin devre dışı bırakıldığından emin olun, aksi takdirde tarayıcı yeni enstrümantasyon ayarlarını alamayabilir.
Web sayfası sekmesini kapatıp yeniden açın. Tekrar giriş yapıp yapmadığını kontrol edin.
Performans İzleme SDK'sını uygulamanıza yeni eklediyseniz SDK'nın çalışmaya başlaması için uygulamanızı tamamen yeniden başlatmanız gerekebilir.
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:
Performans İzleme SDK'sının uygulamanızda doğru şekilde başlatıldığından emin olun.
Performans İzleme SDK'sının aşağıdaki işaret aracılığıyla devre dışı bırakılmadığından emin olun:
-
performance.instrumentationEnabled
-
Tarayıcınızın önbelleğe alma özelliğinin devre dışı bırakıldığından emin olun, aksi takdirde tarayıcı yeni enstrümantasyon ayarlarını alamayabilir.
Web sayfası sekmesini kapatıp yeniden açın. Tekrar giriş yapıp yapmadığını kontrol edin.
Performans İzleme SDK'sını uygulamanıza yeni eklediyseniz SDK'nın çalışmaya başlaması için uygulamanızı tamamen yeniden başlatmanız gerekebilir.
Uygulamanızda devre dışı bırakılmış bir şey bulamazsanız Firebase Desteği ile iletişime geçin .
İlk giriş gecikmesi ölçümüne ilişkin verileri göremiyorsanız aşağıdaki sorun giderme adımlarını deneyin:
Performans İzleme'nin yalnızca kullanıcı web sayfasını sayfa yüklendikten sonraki ilk 5 saniye içinde tıkladığında ilk giriş gecikmesi ölçümünü kaydettiğini unutmayın.
Uygulamanızı bu ölçümü ölçecek şekilde ayarladığınızdan emin olun. İlk giriş gecikmesi ölçüsü manuel kurulum gerektirir. Özellikle bu metrik için çoklu doldurma kitaplığını eklemeniz gerekir. Kurulum talimatları için kütüphanenin belgelerine bakın.
Performans İzleme'nin diğer web uygulaması ölçümlerini raporlaması için bu çoklu doldurma kitaplığının eklenmesinin gerekli olmadığını unutmayın.
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.
record()
yöntemini kullanıyorsanız izlemenizi açıkça başlatmanıza veya durdurmanıza gerek olmadığını unutmayın.- Ö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 veri toplamanın aşağıdaki işaret aracılığıyla devre dışı bırakılmadığından emin olun:
performance.dataCollectionEnabled
Bu bayrak yalnızca özel kod izlemelerine ilişkin verilerin toplanmasını kontrol eder (tüm veriler için değil).
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ğıdakilere dikkat edin:
Performans İzleme, tarayıcı API'si tarafından bildirilen ağ isteklerine ilişkin ölçümleri otomatik olarak toplar. Bu raporlar başarısız ağ isteklerini içermez.
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'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.
If Performance Monitoring is the only Firebase product in your app, you can use the standalone Performance Monitoring SDK (and the recommended header script below) if you're interested in:
- using a namespaced library
- reducing your SDK package size
- delaying initialization of the SDK until after your page loads
To include the standalone Performance Monitoring SDK in your app and delay its initialization to after your page loads:
- Add the following script to the header of your index file.
- Make sure to add your app's Firebase project configuration object .
(function(sa,fbc){function load(f,c){var a=document.createElement('script'); a.async=1;a.src=f;var s=document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(a,s);}load(sa); window.addEventListener('load',function(){firebase.initializeApp(fbc).performance()}); })(performance_standalone, firebaseConfig);
where,
- performance_standalone is
'https://www.gstatic.com/firebasejs/10.4.0/firebase-performance.js'
- firebaseConfig is your app's Firebase config object
The above script asynchronously loads the standalone SDK then initializes Firebase after the window's onload
event fires. This tactic reduces the impact that the SDK could have on page load metrics since the browser has already reported its loading metrics when you initialize the SDK.
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 .