Bu sayfada, Performance Monitoring'ı kullanmaya başlama veya Performance Monitoring özelliklerini ve araçlarını kullanma ile ilgili sorun giderme ipuçları verilmektedir.
Sorun gidermeyle ilgili ilk kontroller
Aşağıdaki iki kontrol, daha fazla sorun giderme işlemi yapmadan önce herkesin uygulaması önerilen genel en iyi uygulamalardır.
1. Performans etkinlikleri için günlük mesajlarını kontrol etme
Performance Monitoring SDK'nın performans etkinliklerini yakaladığından emin olmak için günlük mesajlarınızı kontrol edin.
Performans etkinlikleriyle ilgili günlük mesajlarını görüntüleme
Uygulamanızın
AndroidManifest.xmldosyasına aşağıdaki gibi bir<meta-data>öğesi ekleyerek derleme sırasında Performance Monitoring için hata ayıklama günlük kaydını etkinleştirin:<application> <meta-data android:name="firebase_performance_logcat_enabled" android:value="true" /> </application>Günlük mesajlarınızda hata mesajı olup olmadığını kontrol edin.
Performance Monitoring, günlük mesajlarını
FirebasePerformanceile etiketler. Aşağıdaki komutu çalıştırarak logcat filtrelemeyi kullanarak özellikle süre izlemeyi ve HTTP/S ağ isteği günlük kaydını görüntüleyebilirsiniz:adb logcat -s FirebasePerformance
Performance Monitoring'nın performans etkinliklerini 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_URLLogging 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 etkinliklerini kaydetmiyorsa sorun giderme ipuçlarını inceleyin.
2. Firebase Durum Kontrol Paneli'ni kontrol edin
Firebase veya Performance Monitoring için bilinen bir kesinti olup olmadığını öğrenmek üzere Firebase Durum Kontrol Paneli'ni kontrol edin.
Performance Monitoring hizmetini kullanmaya başlama
Performance Monitoring ile çalışmaya başlıyorsanız (iOS+ | Android | Web), aşağıdaki sorun giderme ipuçları, Firebase'in SDK'yı algılaması veya ilk performans verilerinizi Firebase konsolunda göstermesiyle ilgili sorunlara yardımcı olabilir.
SDK uygulamaya eklendi ancak konsolda SDK'nın eklenmesi gerektiği belirtiliyor
Firebase, uygulamanızdan etkinlik bilgileri (ör. uygulama etkileşimleri) aldığında Performance Monitoring 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österilir. Ardından, 30 dakika içinde kontrol panelinde ilk işlenen veriler gösterilir.
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örmüyorsanız Performance Monitoring öğesinin etkinlikleri günlüğe kaydettiğinden emin olmak için günlük mesajlarınızı kontrol edin. Gecikmeli SDK algılama mesajıyla ilgili sorunları gidermek için aşağıda açıklanan uygun sorun giderme adımlarını deneyin.
Uygulama etkinlikleri günlüğe kaydediyor: sorun giderme adımları
Performance Monitoring Android SDK 19.1.0 veya sonraki bir sürümü (ya da Firebase BoM 26.3.0 veya sonraki bir sürümü) kullandığınızdan emin olun. Sürüm Notu'na bakın.
Hâlâ yerel olarak geliştirme yapıyorsanız veri toplama için daha fazla etkinlik oluşturmayı deneyin:
- 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 etkinlik oluşturun.
Firebase yapılandırma dosyanızın (
google-services.json) 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 eklenmediğinden emin olun.Yapılandırma dosyası, uygulamanızın modül (uygulama düzeyi) dizininde bulunur.
Yapılandırma dosyasında listelenen Firebase Android Uygulama Kimliği (
mobilesdk_app_id) uygulamanız için doğru olmalıdır. Firebase Uygulama Kimliğinizi settings Proje ayarları bölümündeki Uygulamalarınız kartında bulabilirsiniz.
Uygulamanızdaki yapılandırma dosyasında bir sorun olduğunu düşünüyorsanız şunları deneyin:
Uygulamanızda bulunan yapılandırma dosyasını silin.
Yeni bir yapılandırma dosyası indirip Android uygulamanıza eklemek için bu talimatları uygulayın.
SDK etkinlikleri günlüğe kaydediyorsa ve her şey doğru şekilde ayarlanmış gibi görünüyorsa ancak SDK algılama mesajını veya işlenmiş verileri (10 dakika sonra) görmüyorsanız Firebase Destek Ekibi ile iletişime geçin.
Uygulama, etkinlikleri günlüğe kaydetmiyor: sorun giderme adımları
Performance Monitoring Gradle eklentisinin kurulumunu aşağıdaki gibi kontrol edin:
Eklentiyi doğru eklediğinizden emin olun. Özellikle aşağıdakileri kontrol edin:
- Eklentiyi
(
) modülünüzdeki (uygulama düzeyinde)apply plugin: 'com.google.firebase.firebase-perf' build.gradledosyasına eklediniz. - Eklentinin sınıf yolu bağımlılığını (
) proje düzeyindekiclasspath 'com.google.firebase:perf-plugin:2.0.2' build.gradledosyanıza eklediniz.
- Eklentiyi
(
Aşağıdaki işaretlerden herhangi biri aracılığıyla eklentinin devre dışı bırakılmadığından emin olun:
- Modülünüzdeki (uygulama düzeyinde)
instrumentationEnabledbuild.gradledosyası firebasePerformanceInstrumentationEnabled,gradle.propertiesdosyanızda
- Modülünüzdeki (uygulama düzeyinde)
Performance Monitoring SDK'nın devre dışı bırakılmadığını
AndroidManifest.xmldosyanızdaki aşağıdaki işaretlerden biriyle kontrol edin:firebase_performance_collection_enabledfirebase_performance_collection_deactivated
Performance Monitoring'nin çalışma zamanında devre dışı bırakılmadığından emin olun.
Uygulamanızda devre dışı bırakılmış bir öğe bulamıyorsanız Firebase Destek Ekibi ile iletişime geçin.
Console, SDK'nın algılandığını belirtiyor ancak veri gösterilmiyor
Performance Monitoring, performans etkinliği verilerini Performans kontrol panelinde göstermeden önce işler.
"SDK algılandı" mesajının görünmesinden bu yana 24 saatten uzun bir süre geçtiyse ve hâlâ veri görmüyorsanız bilinen bir kesinti olup olmadığını öğrenmek için Firebase Durum Kontrol Paneli'ni kontrol edin. Kesinti yoksa Firebase Destek Ekibi ile iletişime geçin.
Genel sorun giderme
SDK'yı başarıyla eklediyseniz ve uygulamanızda Performance Monitoring kullanıyorsanız aşağıdaki sorun giderme ipuçları, Performance Monitoring özellikleri ve araçlarıyla ilgili genel sorunlara yardımcı olabilir.
Uygulama, performans etkinliklerini günlüğe kaydetmiyor
Performans etkinlikleriyle ilgili günlük mesajlarını görmüyorsanız aşağıdaki sorun giderme adımlarını deneyin:
Performance Monitoring Gradle eklentisinin kurulumunu aşağıdaki gibi kontrol edin:
Eklentiyi doğru eklediğinizden emin olun. Özellikle aşağıdakileri kontrol edin:
- Eklentiyi
(
) modülünüzdeki (uygulama düzeyinde)apply plugin: 'com.google.firebase.firebase-perf' build.gradledosyasına eklediniz. - Eklentinin sınıf yolu bağımlılığını (
) proje düzeyindekiclasspath 'com.google.firebase:perf-plugin:2.0.2' build.gradledosyanıza eklediniz.
- Eklentiyi
(
Aşağıdaki işaretlerden biri aracılığıyla eklentinin devre dışı bırakılmadığından emin olun:
- Modülünüzdeki (uygulama düzeyinde)
instrumentationEnabledbuild.gradledosyası firebasePerformanceInstrumentationEnabled,gradle.propertiesdosyanızda
- Modülünüzdeki (uygulama düzeyinde)
Performance Monitoring SDK'nın devre dışı bırakılmadığını
AndroidManifest.xmldosyanızdaki aşağıdaki işaretlerden biriyle kontrol edin:firebase_performance_collection_enabledfirebase_performance_collection_deactivated
Performance Monitoring'nin çalışma zamanında devre dışı bırakılmadığından emin olun.
Uygulamanızda devre dışı bırakılmış bir öğe bulamıyorsanız Firebase Destek Ekibi ile iletişime geçin.
Performans kontrol panelinde ekran izleme verileri eksik
Ekran oluşturma izleriyle ilgili verileriniz eksikse aşağıdaki sorun giderme adımlarını deneyin:
Android SDK'nın en yeni sürümünü (v22.0.6) kullandığınızdan emin olun. Ekran oluşturma izleri yalnızca v15.2.0 veya sonraki sürümlerde kullanılabilir.
Bir ekran için Donanım Hızlandırma'yı manuel olarak devre dışı bırakmadığınızdan emin olun.
DexGuard veya Jack kullanmadığınızdan emin olun. Performance Monitoring, bu araç zincirleriyle uyumlu değildir.
DexGuard, uygulama başlatma, uygulama ön planda ve uygulama arka planda izlerinin otomatik olarak toplanmasını devre dışı bırakır. Ancak uygulamanız DexGuard kullanıyorsa tüm özel kod izleri normal şekilde çalışır.
Jack desteği sonlandırıldı ve genellikle uygulamanızda kullanılmamalıdır.
Performans kontrol panelinde özel izleme verileri eksik
Otomatik olarak toplanan izlemeler için performans verileri görülüyor ancak özel kod izlemeleri için görülmüyor mu? Aşağıdaki sorun giderme adımlarını deneyin:
Trace API aracılığıyla özel kod izlemeleri oluşturduysanız izlemelerin kurulumunu, özellikle de aşağıdakileri kontrol edin:
- Özel kod izlerinin ve özel metriklerin adları aşağıdaki koşulları karşılamalıdır: başta veya sonda boşluk olmamalı, başta alt çizgi (
_) karakteri olmamalı ve maksimum uzunluk 32 karakter olmalıdır. - Tüm izlemeler başlatılmalı ve durdurulmalıdır. Başlatılmamış, durdurulmamış veya başlatılmadan önce durdurulmuş izler kaydedilmez.
- Özel kod izlerinin ve özel metriklerin adları aşağıdaki koşulları karşılamalıdır: başta veya sonda boşluk olmamalı, başta alt çizgi (
Özel kod izlemelerini
@AddTracenotasyonu ile oluşturduysanız Performance Monitoring Gradle eklentisinin kurulumunu kontrol edin:Eklentiyi doğru eklediğinizden emin olun. Özellikle aşağıdakileri kontrol edin:
- Eklentiyi
(
) modülünüzdeki (uygulama düzeyinde)apply plugin: 'com.google.firebase.firebase-perf' build.gradledosyasına eklediniz. - Eklentinin sınıf yolu bağımlılığını (
) proje düzeyindekiclasspath 'com.google.firebase:perf-plugin:2.0.2' build.gradledosyanıza eklediniz.
- Eklentiyi
(
Aşağıdaki işaretlerden biri aracılığıyla eklentinin devre dışı bırakılmadığından emin olun:
- Modülünüzdeki (uygulama düzeyinde)
instrumentationEnabledbuild.gradledosyası firebasePerformanceInstrumentationEnabled,gradle.propertiesdosyanızda
- Modülünüzdeki (uygulama düzeyinde)
Performance Monitoring öğesinin beklenen özel kod izlerini günlüğe kaydettiğinden emin olmak için günlük mesajlarınızı kontrol edin.
Performance Monitoring etkinlikleri kaydediyor ancak 24 saat sonra veri gösterilmiyorsa Firebase Destek Ekibi ile iletişime geçin.
Performans kontrol panelinde ağ isteği verileri eksik
Ağ isteği verileriniz eksikse aşağıdaki sorun giderme adımlarını deneyin:
Android uygulamaları için Performance Monitoring Gradle eklentisi, HTTP/S ağ isteklerinin otomatik olarak izlenmesini sağlayan enstrümantasyonu etkinleştirir. Aşağıdakileri kontrol edin:
Eklentiyi doğru eklediğinizden emin olun. Özellikle aşağıdakileri kontrol edin:
- Eklentiyi
(
) modülünüzdeki (uygulama düzeyinde)apply plugin: 'com.google.firebase.firebase-perf' build.gradledosyasına eklediniz. - Eklentinin sınıf yolu bağımlılığını (
) proje düzeyindekiclasspath 'com.google.firebase:perf-plugin:2.0.2' build.gradledosyanıza eklediniz.
- Eklentiyi
(
Aşağıdaki işaretlerden biri aracılığıyla eklentinin devre dışı bırakılmadığından emin olun:
- Modülünüzdeki (uygulama düzeyinde)
instrumentationEnabledbuild.gradledosyası firebasePerformanceInstrumentationEnabled,gradle.propertiesdosyanızda
- Modülünüzdeki (uygulama düzeyinde)
Ağ kitaplığı uyumsuzluğunu kontrol edin. Performance Monitoring, aşağıdaki ağ kitaplıklarını kullanan ağ istekleriyle ilgili metrikleri otomatik olarak toplar: OkHttp 3.x.x, Java'nın URLConnection'ı ve Apache HttpClient.
Aşağıdakilere dikkat edin:
Kodunuzun davranışına ve kodunuz tarafından kullanılan ağ kitaplıklarına bağlı olarak Performance Monitoring yalnızca tamamlanan ağ istekleriyle ilgili rapor oluşturabilir. Bu nedenle, açık bırakılan HTTP/S bağlantıları raporlanmayabilir.
Performance Monitoring, DexGuard ve Jack ile uyumlu değildir.
- DexGuard, HTTP/S ağ isteklerinin izlenmesini devre dışı bırakır.
- Jack desteği sonlandırıldı ve genellikle uygulamanızda kullanılmamalıdır.
Performance Monitoring, geçersiz
Content-Typebaşlıklı ağ istekleri hakkında rapor oluşturmaz. AncakContent-Typebaşlıkları olmayan ağ istekleri yine de kabul edilecektir.
Ağ isteği verileri beklendiği gibi toplanmıyor
Performance Monitoring'nin ağ isteği verilerini URL kalıpları altında nasıl topladığı hakkında daha fazla bilgi edinin.
Özel URL kalıplarını da deneyebilirsiniz.
SSS
Proje ana sayfasındaki Performans kartında yer alan En Önemli Sorunlar bölümüne ne oldu?
Son zamanlarda kullanıma sunduğumuz uyarılar özelliğinin devamı olarak En Önemli Sorunlar bölümünü Son Uyarılar ile değiştirdik. Bu özellik, belirlediğiniz eşikler aşıldığında sizi otomatik olarak bilgilendirir. Sorunlar artık kullanımdan kaldırıldı ve yerini uyarılara bıraktı.
Performans kartının üst kısmındaki uygulama seçici, Son Uyarılar bölümündeki uyarı girişlerini filtreler. Yalnızca seçilen uygulamalarla ilgili en son üç uyarı gösterilir.
Uyarılar hakkında daha fazla bilgi edinmek için Performans sorunlarıyla ilgili uyarıları ayarlama başlıklı makaleyi inceleyin.
Konsolda sorunlar için eşikler belirleme özelliği neden kaldırıldı?
Performance Monitoring, tanımlanan eşikleri aşan metrikler için uyarıları destekler. Performans metrikleri için yapılandırılabilir bu eşiklerle karışıklığı önlemek amacıyla sorunlar için eşik yapılandırma özelliği kaldırıldı.
Firebase konsolundaki Ayrıntılar ve Metrikler bilgilerine ne oldu?
Sorun giderme sürecinizi iyileştirmek için Ayrıntılar ve Metrikler sayfalarını yeni tasarlanmış, merkezi bir kullanıcı arayüzüyle (UI) değiştirdik. Bu yeni sorun giderme kullanıcı arayüzü, Ayrıntılar ve Metrikler'in sunduğu temel işlevleri sunar. Sorun giderme hakkında daha fazla bilgi edinmek için Belirli bir izleme için daha fazla veri görüntüleme başlıklı makaleyi inceleyin.
Neden örnek sayısı beklediğim gibi değil?
Performance Monitoring, uygulamanızın kullanıcı cihazlarından performans verileri toplar. Uygulamanızın çok sayıda kullanıcısı varsa veya uygulama büyük miktarda performans etkinliği oluşturuyorsa Performance Monitoring, işlenen etkinlik sayısını azaltmak için veri toplamayı cihazların bir alt kümesiyle sınırlayabilir. Bu sınırlar, daha az etkinlik olsa bile metrik değerlerinin kullanıcılarınızın uygulama deneyimini temsil etmeye devam etmesini sağlayacak kadar yüksektir.
Topladığımız veri hacmini yönetmek için Performance Monitoring aşağıdaki örnekleme seçeneklerini kullanır:
Cihaz üzerinde sıklık sınırlaması: Bir cihazın ani izleme dizileri göndermesini önlemek için cihazdan gönderilen kod ve ağ isteği izlerinin sayısını 10 dakikada 300 etkinlik ile sınırlandırırız. Bu yaklaşım, cihazı büyük miktarda performans verisi gönderebilen döngüye alınmış ölçümlerden korur ve tek bir cihazın performans ölçümlerini çarpıtmasını önler.
Dinamik örnekleme: Performance Monitoring, tüm uygulama kullanıcıları arasında günlük olarak uygulama başına sınırlı sayıda kod izi ve ağ isteği izi toplar. Rastgele bir cihazın izleri yakalayıp göndermesi gerekip gerekmediğini belirlemek için cihazlarda (Firebase Remote Config kullanılarak) dinamik bir örnekleme hızı getirilir. Örnekleme için seçilmeyen bir cihaz herhangi bir etkinlik göndermez. Dinamik örnekleme hızı uygulamaya özeldir ve toplanan verilerin genel hacminin sınırın altında kalmasını sağlamak için ayarlanır.
BigQuery entegrasyonunu etkinleştiren projeler, ağ isteği izlerinin sayısı için daha yüksek bir sınır alır.
Kullanıcı oturumları, kullanıcının cihazından ek ve ayrıntılı veriler gönderir. Bu verilerin yakalanıp gönderilmesi için daha fazla kaynak gerekir. Kullanıcı oturumlarının etkisini en aza indirmek için Performance Monitoring oturum sayısını da kısıtlayabilir.
Sunucu tarafı sıklık sınırlaması: Uygulamaların örnekleme sınırını aşmaması için Performance Monitoring, cihazlardan alınan bazı etkinlikleri bırakmak üzere sunucu tarafı örnekleme kullanabilir. Bu tür bir sınırlama, metriklerimizin etkinliğini değiştirmese de aşağıdakiler de dahil olmak üzere küçük desen kaymalarına neden olabilir:
- İz sayısı, bir kod parçasının yürütüldüğü sayıdan farklı olabilir.
- Kodda birbirine yakın olan izlemelerin her birinde farklı sayıda örnek olabilir.
Console'daki Sorunlar sekmesine ne oldu?
Sorunlar sekmesinin yerini, belirlediğiniz eşikler aşıldığında sizi otomatik olarak bilgilendiren Uyarılar aldı. Eşiğin durumunu belirlemek için artık Firebase konsolunu manuel olarak kontrol etmeniz gerekmez. Uyarılar hakkında bilgi edinmek için Performans sorunlarıyla ilgili uyarıları ayarlama başlıklı makaleyi inceleyin.
Konsoldaki Cihazda ve Ağ sekmelerine ne oldu? Bu sayfalardaki izleri nasıl görüntüleyebilirim?
Firebase konsolunun Performance Monitoring bölümünü yeniden tasarladık. Artık Kontrol paneli sekmesinde temel metrikleriniz ve tüm izleriniz tek bir alanda gösteriliyor. Yeniden tasarım kapsamında Cihazda ve Ağ sayfalarını kaldırdık.
Kontrol paneli sekmesinin alt kısmındaki izler tablosunda, Cihazda ve Ağ sekmelerinde gösterilen tüm bilgiler yer alır. Ancak bu tabloda, izlerinizi belirli bir metriğin yüzde değişimine göre sıralama özelliği de dahil olmak üzere bazı ek özellikler bulunur. Belirli bir izlemeyle ilgili tüm metrikleri ve verileri görüntülemek için izlemeler tablosunda izleme adını tıklayın.
İzlerinizi, izler tablosunun aşağıdaki alt sekmelerinde görüntüleyin:
- Ağ isteği izleri (hem kullanıma hazır hem de özel) — Ağ istekleri alt sekmesi
- Özel kod izleri: Özel izler alt sekmesi
- Uygulama başlatma, uygulama ön planda, uygulama arka planda izleri: Özel izler alt sekmesi
- Ekran oluşturma izleri: Ekran oluşturma alt sekmesi
- Sayfa yükleme izleri: Sayfa yükleme alt sekmesi
İzleme tablosu ve metrikleri ile verileri görüntüleme hakkında ayrıntılı bilgi için konsola genel bakış sayfasını ziyaret edin ( iOS+ | Android | Web).
Yavaş ve donmuş karelerin sayısı neden beklediğim gibi değil?
Yavaş oluşturulan kareler ve donan kareler, cihazın yenileme hızının 60 Hz olduğu varsayılarak hesaplanır. Bir cihazın yenileme hızı 60 Hz'den düşükse saniyede daha az kare oluşturulduğu için her karenin oluşturma süresi daha uzun olur. Daha yavaş oluşturma süreleri, daha fazla karenin yavaş oluşturulmasına veya donmasına neden olacağından daha fazla yavaş veya donmuş kare bildirilmesine neden olabilir. Ancak bir cihazın yenileme hızı 60 Hz'den yüksekse her karenin oluşturma süresi daha hızlı olur. Bu durum, daha az yavaş veya donmuş karenin bildirilmesine neden olabilir. Bu, Performance Monitoring SDK'daki mevcut bir sınırlamadır.
Neden parça izlerini göremiyorum?
Uygulama etkinliğinin yanı sıra parçaların performansını da görmek için uygulamanızın Performance Monitoring Android SDK'nın 20.1.0 veya sonraki bir sürümünü kullandığından emin olun. Daha fazla bilgi edinmek için Uygulamanıza Performance Monitoring ekleme başlıklı makaleyi inceleyin.
Hangi izlerin parçalar ve etkinliklerle ilgili olduğunu nasıl anlayabilirim?
Parça ve etkinlik izlerinin her biri, uygulamanızda tanımlandığı şekilde sınıf adına göre belirlenir. Her ekran izinde, sınıf adından önce st öneki bulunur. Firebase konsolunda önek kaldırılır. Daha fazla bilgi edinmek için Ekran oluşturma performans verileri hakkında bilgi (Apple ve Android uygulamaları) başlıklı makaleyi inceleyin.
Neden diğer izlere kıyasla daha az parça izi görüyorum?
Performance Monitoring, bir cihazda toplanan tüm etkinliklerde etkinlik örneklemesi gerçekleştirir. Bu yaklaşım, performans metrikleri sağlamak için kullanıcı cihazlarından gereken minimum etkinlikleri toplamamıza olanak tanır.
Uygulamamın oluşturma performansıyla ilgili bir sorun olduğunda nasıl bilgilendirilirim?
Performance Monitoring, önem verdiğiniz metriklerle ilgili uyarılar ayarlamanıza olanak tanır. Oluşturulan ekran oluşturma izleri için, yavaş ve donmuş kare yüzdesi belirlediğiniz eşiği aştığında sizi bilgilendirecek uyarılar ayarlayabilirsiniz.
Performance Monitoring Gradle eklentisini etkinleştirdikten sonra derleme sürelerim yüksek. Bunu nasıl iyileştirebilirim?
Android için Performance Monitoring, HTTP/S ağ isteklerini izleme gibi bazı hazır özellikleri sağlamak için bayt kodu enstrümantasyonunu kullanır. Derleme kapsamında, uygulamanızın ağ isteği performansını ölçmek için kritik öneme sahip kodu enstrümanlaştırmak üzere uygulamanızın tüm sınıflarında (bağımlılıklar dahil) yineleme yapılması gerekir.
Derleme süresinin artmasına neden olan bazı önemli faktörler şunlardır:
- Sınıf veya dosya sayısı
- Bu sınıfların her birinin boyutu (kod satırları)
- Makine yapılandırmanız
- İlk derleme ile sonraki derlemeler (sonraki derlemeler genellikle ilk derlemeden daha hızlıdır)
Derleme sürenizi optimize etmek için kodunuzu modüler hale getirebilirsiniz.
Performance Monitoring eklentisinin v1.3.3 sürümünden itibaren, artımlı derleme işleme ve kitaplık girişlerinin önbelleğe alınması konusunda önemli iyileştirmeler yapmaya odaklandık. En yeni derleme süresi iyileştirmelerinden yararlanmak için eklentinin en son sürümünü (v2.0.2) kullandığınızdan emin olun.
Uzun derleme sürelerini önlemek istiyorsanız hata ayıklama derlemeleriniz için Performance Monitoring eklentisini yerel olarak devre dışı bırakabilirsiniz. Ancak bu yaklaşım, uygulamanızdaki ağ istekleriyle ilgili performans ölçümlerinin kaçırılmasına neden olabileceğinden üretim derlemeleri için önerilmez.
Performance Monitoring Gradle eklentisiyle uyumlu olmayan kitaplıklar nedeniyle derleme hataları alırsam ne yapmalıyım?
Android için Performance Monitoring, HTTP/S ağ isteklerini izleme gibi bazı hazır özellikleri sağlamak için bayt kodu enstrümantasyonunu kullanır. Derleme kapsamında, uygulamanızın ağ isteği performansını ölçmek için kritik öneme sahip kodu enstrümanlaştırmak üzere uygulamanızın tüm sınıflarında (bağımlılıklar dahil) yineleme yapılması gerekir.
JSR/RET are not supported with
computeFrames option gibi derleme hataları veya Performance Monitoring eklentisiyle entegrasyondan sonra benzer hatalar alıyorsanız bunun nedeni, Performance Monitoring Gradle eklentisiyle uyumlu olmayan bir kitaplığa da bağımlı olmanız olabilir.
Bu sorunu çözmek için aşağıdaki adımları uygulayarak uyumsuz sınıfların/kitaplıkların izlenmesini hariç tutabilirsiniz:
- Performance Monitoring Gradle eklentisinin en son sürümüne (minimum v1.4.0) güncelleyin.
- Android Gradle eklentinizin sürümünü 7.2.0 veya daha yeni bir sürüme güncelleyin.
- Uyumsuz sınıfların/kitaplıkların izlenmesini engellemek için modülünüzün (uygulama düzeyinde)
build.gradledosyasına aşağıdaki işareti ekleyin: Android Gradle eklentisininandroid { // ... androidComponents { onVariants(selector().all(), { instrumentation.excludes.add("example.incompatible.library") }) } }
InstrumentationAPI'sininexcludeözelliği hakkında daha fazla bilgi edinmek için Enstrümantasyon bölümüne bakın.
Lütfen uyumsuz kitaplıklar nedeniyle derleme hatalarıyla karşılaştığınızda Github sorunu bildirin. Böylece bu kitaplıklar, Performance Monitoring eklentisinde enstrümanlaştırılmaktan da hariç tutulabilir.
Performance Monitoring verilerimin BigQuery'ye aktarılması beklenenden daha uzun sürüyor. Gerçek zamanlı değil mi?
Firebase Performance Monitoring için BigQuery entegrasyonunu etkinleştirdiyseniz verileriniz günün bitiminden 12-24 saat sonra (Pasifik Saati) BigQuery'ye aktarılır.
Örneğin, 19 Nisan'a ait veriler 20 Nisan'da 12:00 ile gece yarısı arasında BigQuery'de kullanılabilir (tüm tarihler ve saatler Pasifik Saat Dilimi'ne göre belirlenir).
Kaç özel URL kalıbı oluşturabilirim?
Uygulama başına toplamda 400'e kadar özel URL kalıbı ve bu uygulama için alan başına 100'e kadar özel URL kalıbı oluşturabilirsiniz.
Gerçek zamanlıya yakın veri işleme ve görüntüleme
"Gerçek zamanlıya yakın" performans verileri ne anlama gelir?
Firebase Performance Monitoring, toplanan performans verilerini geldikçe işler. Bu da Firebase konsolunda neredeyse gerçek zamanlı veri görüntülenmesine neden olur. İşlenen veriler, toplandıktan birkaç dakika sonra konsolda gösterilir. Bu nedenle "neredeyse gerçek zamanlı" terimi kullanılır.
Neredeyse anlık veri işlemeyi kullanmak için uygulamanızın anlık veri işlemeyle uyumlu bir SDK sürümü kullandığından emin olun.
Uygulamam için gerçek zamanlıya yakın performans verilerini nasıl alabilirim?
Neredeyse anlık veri işlemeden yararlanmak için uygulamanızın anlık veri işleme ile uyumlu bir Performance Monitoring SDK sürümü kullandığından emin olmanız yeterlidir.
Gerçek zamanlı uyumlu SDK sürümleri şunlardır:
- iOS: v7.3.0 veya sonraki sürümler
- tvOS: 8.9.0 veya sonraki sürümler
- Android: 19.0.10 veya sonraki sürümler (ya da Firebase Android BoM 26.1.0 veya sonraki sürümler)
- Web: 7.14.0 veya sonraki sürümler
Her zaman SDK'nın en son sürümünü kullanmanızı önerdiğimizi ancak yukarıda listelenen sürümlerin herhangi birinin Performance Monitoring'nın verilerinizi neredeyse gerçek zamanlı olarak işlemesini sağlayacağını unutmayın.
Hangi Performance Monitoring SDK sürümleri anlık olarak uyumlu kabul edilir?
Gerçek zamanlı veri işlemeyle uyumlu SDK sürümleri şunlardır:
- iOS: v7.3.0 veya sonraki sürümler
- tvOS: 8.9.0 veya sonraki sürümler
- Android: 19.0.10 veya sonraki sürümler (ya da Firebase Android BoM 26.1.0 veya sonraki sürümler)
- Web: 7.14.0 veya sonraki sürümler
Her zaman SDK'nın en son sürümünü kullanmanızı önerdiğimizi ancak yukarıda listelenen sürümlerin herhangi birinin Performance Monitoring'nın verilerinizi neredeyse gerçek zamanlı olarak işlemesini sağlayacağını unutmayın.
Uygulamamı gerçek zamanlı uyumlu bir SDK sürümünü kullanacak şekilde güncellemezsem ne olur?
Uygulamanız anlık uyumlu bir SDK sürümü kullanmıyorsa uygulamanızın tüm performans verilerini Firebase konsolunda görmeye devam edersiniz. Ancak performans verilerinin gösterilmesi, toplanma zamanından yaklaşık 36 saat sonra gerçekleşir.
Gerçek zamanlı uyumlu bir SDK sürümüne güncelledim ancak bazı kullanıcılarım hâlâ uygulamamın eski sürümlerini kullanıyor. Bu kullanıcıların performans verilerini Firebase konsolunda görmeye devam edecek miyim?
Evet! Bir uygulama örneğinin hangi SDK sürümünü kullandığına bakılmaksızın, tüm kullanıcılarınızın performans verilerini görürsünüz.
Ancak son verilere (yaklaşık 36 saatten eski olmayan) bakıyorsanız gösterilen veriler, anlık uyumlu bir SDK sürümü kullanan uygulama örneklerinin kullanıcılarına aittir. Ancak güncel olmayan veriler, uygulamanızın tüm sürümlerine ait performans verilerini içerir.
Performans verilerinin neden anlık olarak gösterilmediğini öğrenin.
Gerçek zamanlı performans verilerini görüntülemek için uygulamanızın, gerçek zamanlı veri işlemeyle uyumlu bir Performance MonitoringSDK sürümü kullandığından emin olun.
- iOS: v7.3.0 veya sonraki sürümler
- tvOS: 8.9.0 veya sonraki sürümler
- Android: 19.0.10 veya sonraki sürümler (ya da Firebase Android BoM 26.1.0 veya sonraki sürümler)
- Web: 7.14.0 veya sonraki sürümler
Her zaman SDK'nın en son sürümünü kullanmanızı önerdiğimizi ancak yukarıda listelenen sürümlerin herhangi birinin Performance Monitoring'nın verilerinizi neredeyse gerçek zamanlı olarak işlemesini sağlayacağını unutmayın.
Firebase Destek Ekibi ile iletişime geçme
Firebase Destek Ekibi ile iletişime geçerseniz Firebase uygulama kimliğinizi mutlaka ekleyin. Firebase uygulama kimliğinizi settings Proje ayarları bölümündeki Uygulamalarınız kartında bulabilirsiniz.