İzleme

Performans optimizasyonu, genellikle gecikme ve aktarım hızıyla ilgili temel metriklerin tanımlanmasıyla başlar. Bu metrikleri yakalamak ve izlemek için izlemenin eklenmesi, uygulamadaki zayıf noktaları ortaya çıkarır. Performans metriklerini iyileştirmek için metrikler kullanılarak optimizasyon yapılabilir.

Ayrıca birçok izleme aracı, belirli bir eşik karşılandığında bildirim alabilmeniz için metrikleriniz için uyarılar oluşturmanıza olanak tanır. Örneğin, başarısız isteklerin yüzdesi normal seviyelerin% x'inden fazla arttığında sizi bilgilendirecek bir uyarı oluşturabilirsiniz. İzleme araçları, normal performansın nasıl göründüğünü belirlemenize ve gecikme, hata miktarları ve diğer önemli metriklerde olağan dışı artışları tespit etmenize yardımcı olabilir. Bu metrikleri izleyebilmek özellikle işletme açısından kritik zaman aralıklarında veya yeni kod üretime gönderildikten sonra önemlidir.

Gecikme metriklerini tanımlama

Kullanıcıların mobil uygulamalardan daha da yüksek standartlar beklediğini göz önünde bulundurarak kullanıcı arayüzünüzü olabildiğince duyarlı tuttuğunuzdan emin olun. Gecikme, özellikle kontrol edilmezse aktarım sorunları oluşturabileceğinden arka uç hizmetleri için de ölçülmeli ve izlenmelidir.

Takip etmeniz önerilen metrikler arasında şunlar yer alır:

  • İstek süresi
  • Alt sistem ayrıntı düzeyinde istek süresi (API çağrıları gibi)
  • İş süresi

Veri işleme hızı metriklerini belirleme

Aktarım hızı, belirli bir dönemde sunulan toplam istek sayısının bir ölçümüdür. İşleme hızı, alt sistemlerin gecikmesinden etkilenebilir. Bu nedenle, işleme hızını artırmak için gecikmeyi optimize etmeniz gerekebilir.

İzlenmesi önerilen bazı metrikler aşağıda verilmiştir:

  • Saniyedeki sorgu sayısı
  • Saniyede aktarılan veri boyutu
  • Saniye başına G/Ç işlemi sayısı
  • CPU veya bellek kullanımı gibi kaynak kullanımı
  • İşleme iş listesinin boyutu (ör. pub/sub veya iş parçacıklarının sayısı)

Ortalama değerden

Performansı ölçerken yaygın olarak yapılan bir hata, yalnızca ortalama (ortalama) duruma bakmaktır. Bu bilgi faydalı olsa da gecikmenin dağılımı hakkında bilgi sağlamaz. İzlenmesi daha iyi bir metrik, performans yüzdelik dilimleridir (ör. bir metrik için 50./75./90./99. yüzdelik dilim).

Genel olarak optimizasyon iki adımda yapılabilir. Öncelikle 90. yüzdelik dilim gecikmesi için optimizasyon yapın. Ardından, kuyruk gecikmesi olarak da bilinen 99. yüzdelik dilimi göz önünde bulundurun: İsteklere ait küçük bir kısmın tamamlanmasının çok daha uzun sürmesi.

Ayrıntılı sonuçlar için sunucu tarafı izleme

Sunucu tarafı profil oluşturma, genellikle metrikleri izlemek için tercih edilir. Sunucu tarafı genellikle çok daha kolay enstrümante edilir, daha ayrıntılı verilere erişim sağlar ve bağlantı sorunlarından kaynaklanan bozulmalara daha az maruz kalır.

Uçtan uca görünürlük için tarayıcı izleme

Tarayıcı profilleme, son kullanıcı deneyimi hakkında ek analizler sağlayabilir. Hangi sayfaların yavaş istekleri olduğunu gösterebilir. Daha ayrıntılı analiz için bu sayfaları sunucu tarafı izlemeyle ilişkilendirebilirsiniz.

Google Analytics, sayfa zamanlamaları raporunda sayfa yükleme süreleri için kullanıma hazır izleme sağlar. Bu sayede, sitenizdeki kullanıcı deneyimini anlamak için özellikle aşağıdakiler gibi çeşitli faydalı görünümler elde edebilirsiniz:

  • Sayfa yüklenme süreleri
  • Yönlendirme yükleme süreleri
  • Sunucu yanıt süreleri

Bulutta izleme

Uygulamanızın performans metriklerini yakalamak ve izlemek için kullanabileceğiniz birçok araç vardır. Örneğin, Google Cloud Logging'i kullanarak performans metriklerini Google Cloud Projenize kaydedebilir, ardından kaydedilen metrikleri izlemek ve segmentlere ayırmak için Google Cloud Monitoring'de kontrol panelleri oluşturabilirsiniz.

Python istemci kitaplığındaki özel bir müdahaleciden Google Cloud Logging'e günlük kaydı yapmayla ilgili örnek için Günlük kaydı kılavuzuna göz atın. Google Cloud'da bulunan bu verilerle, Google Cloud Monitoring aracılığıyla uygulamanızla ilgili görünürlük elde etmek için günlük verilerin üzerine metrik oluşturabilirsiniz. Google Cloud Logging'e gönderilen günlükleri kullanarak metrik oluşturmak için kullanıcı tanımlı günlük tabanlı metrikler kılavuzundaki adımları uygulayın.

Alternatif olarak, kodunuzda metrikleri tanımlamak ve günlüklerden ayrı olarak doğrudan Monitoring'e göndermek için Monitoring istemci kitaplıklarını kullanabilirsiniz.

Günlük tabanlı metrik örneği

Uygulamanızdaki hata oranlarını daha iyi anlamak için is_fault değerini izlemek istediğinizi varsayalım. Günlüklerdeki is_fault değerini yeni bir sayaç metriği olan ErrorCount'a ayıklayabilirsiniz.

Metrik yapılandırması

Metriklerdeki filtreler ve etiketler

Cloud Logging'da etiketler, metriklerinizi günlüklerdeki diğer verilere göre kategorilere ayırmanıza olanak tanır. Hata sayısının Google Ads API yöntemine göre nasıl ayrıldığını görmek için Cloud Logging'a gönderilen method alanı için bir etiket yapılandırabilirsiniz.

ErrorCount metriği ve Method etiketi yapılandırıldığında, ErrorCountMethod'ye göre gruplandırarak izlemek için Monitoring kontrol panelinde yeni bir grafik oluşturabilirsiniz.

ErrorCount kontrol paneli

Uyarılar

Cloud Monitoring'da ve diğer araçlarda, metrikleriniz tarafından uyarıların ne zaman ve nasıl tetiklenmesi gerektiğini belirten uyarı politikalarını yapılandırabilirsiniz. Cloud Monitoring uyarılarını ayarlamayla ilgili talimatlar için uyarı kılavuzunu inceleyin.