Belirli uygulama kodu için özel izleme ekleme


Performance Monitoring, uygulamanızın performansını izlemenize yardımcı olmak için izleme toplar. İzleme, uygulamanızdaki iki zaman noktası arasında yakalanan performans verilerinin bir raporudur.

Uygulamanızdaki belirli bir kodla ilişkilendirilmiş performans verilerini izlemek için kendi izlerinizi oluşturabilirsiniz. Özel kod izleme ile uygulamanızın belirli bir görevi veya bir görev kümesini (örneğin, bir dizi görüntü yüklemek ya da veritabanınızı sorgulamak) tamamlamasının ne kadar sürdüğünü ölçebilirsiniz.

Özel kod izleme için varsayılan metrik "süre"dir (izlemenin başlangıç ve bitiş noktaları arasındaki süre). Ancak özel metrikler de ekleyebilirsiniz.

Kodunuzda, Performance Monitoring SDK'sının sağladığı API'leri kullanarak özel bir kod izlemenin başlangıcını ve sonunu tanımlarsınız. Özel kod izlemeleri, oluşturulduktan sonra herhangi bir zamanda başlatılabilir ve iş parçacığı açısından güvenlidir.

Bu izler için toplanan varsayılan metrik "süre" olduğundan, bazen "Süre izleri" olarak da adlandırılır.

Bu izlerden elde edilen verileri, Performans kontrol panelinin alt kısmındaki iz tablosunun Özel izler alt sekmesinde görüntüleyebilirsiniz (Konsol'u kullanma hakkında daha fazla bilgiyi bu sayfanın ilerleyen bölümlerinde bulabilirsiniz).

Varsayılan özellikler, özel özellikler ve özel metrikler

Performance Monitoring, özel kod izlemeleri için Firebase konsolunda izleme verilerini filtreleyebilmeniz amacıyla varsayılan özellikleri (uygulama sürümü, ülke, cihaz gibi yaygın meta veriler) otomatik olarak günlüğe kaydeder. Ayrıca özel özellikler (oyun seviyesi veya kullanıcı özellikleri gibi) ekleyip izleyebilirsiniz.

İz kapsamında gerçekleşen performansla ilgili etkinlikler için özel metrikleri kaydetmek amacıyla özel bir kod izlemeyi daha ayrıntılı bir şekilde yapılandırabilirsiniz. Örneğin, önbellek isabetleri ve önbellekte olmama sayısı veya kullanıcı arayüzünün belirgin bir süre yanıt vermeme sayısı için özel metrik oluşturabilirsiniz.

Özel özellikler ve özel metrikler, Firebase konsolunda izlemenin varsayılan özellikleri ve varsayılan metriğiyle birlikte gösterilir.

Özel kod izlemeleri ekleme

Belirli uygulama kodlarını izlemek için özel kod izlemeleri eklemek üzere Performance Monitoring Trace API'yi (Swift | Obj-C) kullanın.

Aşağıdakileri göz önünde bulundurun:

  • Bir uygulamada birden fazla özel kod izlemesi olabilir.
  • Aynı anda birden fazla özel kod izlemesi çalışabilir.
  • Özel kod izlemelerinin adları aşağıdaki koşulları karşılamalıdır: Başında veya sonunda boşluk olmamalıdır, başta alt çizgi (_) karakteri olmamalıdır ve maksimum uzunluk 100 karakterdir.
  • Özel kod izleri, özel metriklerin ve özel özelliklerin eklenmesini destekler.

Özel bir kod izlemeyi başlatmak ve durdurmak için izlemek istediğiniz kodu aşağıdakine benzer kod satırlarıyla sarmalayın:

Swift

Not: Bu Firebase ürünü macOS, Mac Catalyst ve watchOS hedeflerinde kullanılamaz.
// Add the Performance Monitoring module to your header
import FirebasePerformance

let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME")

// code that you want to trace

trace.stop()

Objective-C

Not: Bu Firebase ürünü macOS, Mac Catalyst ve watchOS hedeflerinde kullanılamaz.
// Add the Performance Monitoring module to your header
@import FirebasePerformance;

FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"];

// code that you want to trace

[trace stop];

Özel kod izlerine özel metrikler ekleme

Özel kod izlemelerine özel metrikler eklemek için Performance Monitoring Trace API'yi (Swift | Obj-C) kullanın.

Aşağıdakileri göz önünde bulundurun:

  • Özel metrik adları şu koşulları karşılamalıdır: Başta veya sonda boşluk olmamalı, başında alt çizgi (_) karakteri bulunmamalıdır ve maksimum uzunluk 100 karakterdir.
  • Her özel kod izleme, en fazla 32 metrik kaydedebilir (varsayılan Süre metriği dahil).

Özel metrik eklemek için etkinlik her gerçekleştiğinde aşağıdakine benzer bir kod satırı ekleyin. Örneğin, bu özel metrik, uygulamanızda gerçekleşen performansla ilgili etkinlikleri (ör. önbellek isabetleri veya yeniden denemeler) sayar.

Swift

Not: Bu Firebase ürünü macOS, Mac Catalyst ve watchOS hedeflerinde kullanılamaz.
let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME")

trace.incrementMetric(named:"EVENT_NAME", by: 1)
// code that you want to trace (and log custom metrics)

trace.stop()

Objective-C

Not: Bu Firebase ürünü macOS, Mac Catalyst ve watchOS hedeflerinde kullanılamaz.
FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"];

[trace incrementMetric:@"EVENT_NAME" byInt:1];
// code that you want to trace (and log custom metrics)

[trace stop];

Özel kod izlemeleri için özel özellikler oluşturma

Özel kod izlemelerine özel özellikler eklemek için Performance Monitoring Trace API'yi (Swift | Obj-C) kullanın.

Özel özellikleri kullanmak için uygulamanıza özelliği tanımlayan ve belirli bir özel kod izlemeyle ilişkilendiren bir kod ekleyin. Özel özelliği, izlemenin başladığı andan sona erdiği ana kadar herhangi bir zamanda ayarlayabilirsiniz.

Aşağıdakileri göz önünde bulundurun:

  • Özel özellik adları aşağıdaki şartları karşılamalıdır:

    • Başında veya sonunda boşluk, başında alt çizgi (_) karakteri olmamalıdır.
    • Boşluk yok
    • Maksimum uzunluk 32 karakterdir
    • Ad için izin verilen karakterler A-Z, a-z ve _'dir.
  • Her özel kod izlemesi en fazla 5 özel özellik kaydedebilir.

  • Lütfen özel özelliklerin, bir bireyi Google'a kişisel olarak tanımlayan herhangi bir bilgi içermediğinden emin olun.

    Bu kural hakkında daha fazla bilgi

Swift

Not: Bu Firebase ürünü macOS, Mac Catalyst ve watchOS hedeflerinde kullanılamaz.
let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME")

trace.setValue("A", forAttribute: "experiment")

// Update scenario.
trace.setValue("B", forAttribute: "experiment")

// Reading scenario.
let experimentValue:String? = trace.valueForAttribute("experiment")

// Delete scenario.
trace.removeAttribute("experiment")

// Read attributes.
let attributes:[String, String] = trace.attributes;

Objective-C

Not: Bu Firebase ürünü macOS, Mac Catalyst ve watchOS hedeflerinde kullanılamaz.
FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"];

[trace setValue:@"A" forAttribute:@"experiment"];

// Update scenario.
[trace setValue:@"B" forAttribute:@"experiment"];

// Reading scenario.
NSString *experimentValue = [trace valueForAttribute:@"experiment"];

// Delete scenario.
[trace removeAttribute:@"experiment"];

// Read attributes.
NSDictionary <NSString *, NSString *> *attributes = [trace attributes];

Performans verilerini izleme, görüntüleme ve filtreleme

Kontrol panelinizde belirli metrikleri izleme

Önemli metriklerinizin nasıl bir eğilim gösterdiğini öğrenmek için Performans kontrol panelinin üst kısmındaki metrik panosuna ekleyin. Haftadan haftaya değişiklikleri görerek veya kodunuzdaki son değişikliklerin performansı iyileştirdiğini doğrulayarak regresyonları hızla belirleyebilirsiniz.

<span class=Firebase Performance Monitoring kontrol paneli" />

Metrik panosuna metrik eklemek için aşağıdaki adımları uygulayın:

  1. Firebase konsolunda Performans gösterge tablosuna gidin.
  2. Boş bir metrik kartını tıklayın, ardından panonuza eklemek için mevcut bir metrik seçin.
  3. Daha fazla seçenek için doldurulmuş bir metrik kartında simgesini tıklayın. Örneğin, bir metriği değiştirmek veya kaldırmak için bu seçeneği kullanabilirsiniz.

Metrik panosu, zaman içinde toplanan metrik verilerini hem grafik biçiminde hem de sayısal yüzde değişimi olarak gösterir.

Kontrol panelini kullanma hakkında daha fazla bilgi edinin.

İzleri ve verilerini görüntüleme

İzlerinizi görüntülemek için Firebase konsolunda Performans kontrol paneli'ne gidin, izler tablosuna gidin ve uygun alt sekmeyi tıklayın. Tabloda her iz için en önemli metriklerden bazıları gösterilir. Hatta listeyi belirli bir metrik için yüzdelik değişime göre de sıralayabilirsiniz.

Performance Monitoring, Firebase konsolunda metrik değişikliklerini vurgulayan bir sorun giderme sayfası sağlar. Bu sayfa, hızlı bir şekilde ele almanızı ve performans sorunlarının uygulamalarınız ve kullanıcılarınız üzerindeki etkisini en aza indirmenizi kolaylaştırır. Olası performans sorunları hakkında bilgi edindiğinizde sorun giderme sayfasını kullanabilirsiniz. Örneğin aşağıdaki senaryolarda:

  • Kontrol panelinde ilgili metrikleri seçtiğinizde büyük bir delta fark edersiniz.
  • İz tablosunda en büyük deltaları en üstte gösterecek şekilde sıralarsınız ve önemli bir yüzde değişimi görürsünüz.
  • Performans sorunuyla ilgili sizi bilgilendiren bir e-posta uyarısı alırsınız.

Sorun giderme sayfasına aşağıdaki yöntemleri kullanarak erişebilirsiniz:

  • Metrik kontrol panelinde Metrik ayrıntılarını görüntüle düğmesini tıklayın.
  • Herhangi bir metrik kartında => Ayrıntıları görüntüle'yi seçin. Sorun giderme sayfasında, seçtiğiniz metrik hakkında bilgiler gösterilir.
  • İz tablosunda bir iz adını veya söz konusu izle ilişkili satırdaki herhangi bir metrik değerini tıklayın.
  • E-posta uyarısında Şimdi incele'yi tıklayın.

İz tablosundaki bir iz adını tıkladığınızda, ilgilendiğiniz metrikleri ayrıntılı olarak inceleyebilirsiniz. Verileri özelliğe göre filtrelemek için Filtre düğmesini tıklayın. Örneğin:

<span class= resmiFirebase Performance Monitoring verileri özelliğe göre filtreleniyor" />
  • Eski bir sürüm veya en son sürümünüzle ilgili verileri görüntülemek için Uygulama sürümü'ne göre filtreleyin
  • Eski cihazların uygulamanızı nasıl işlediğini öğrenmek için Cihaz'a göre filtreleyin
  • Veritabanı konumunuzun belirli bir bölgeyi etkilemediğinden emin olmak için Ülke'ye göre filtreleme

İzlemlerinize ait verileri görüntüleme hakkında daha fazla bilgi edinin.

Sonraki adımlar

  • Performans verilerini incelemek için özellikleri kullanma hakkında daha fazla bilgi edinin.

  • Firebase konsolunda performans sorunlarını izleme hakkında daha fazla bilgi edinin.

  • Uygulamanızın performansını düşüren kod değişiklikleri için uyarılar oluşturun. Örneğin, belirli bir özel kod izlemenin süresi, belirlediğiniz bir eşiği aşarsa ekibiniz için bir e-posta uyarısı yapılandırabilirsiniz.

  • Aynı oturum sırasında toplanan diğer izlerin zaman çizelgesi bağlamında belirli bir izlemeyi görebileceğiniz kullanıcı oturumlarının ayrıntılı raporlarını görüntüleyin.