Kod İyileştirme sonuçlarını görüntüleme

Uygulamanızda Kod İyileştirmeleri'ni ayarlayıp yapılandırdıktan sonra, aldığınız içgörülere erişebilir ve görüntüleyebilirsiniz.

Access Kod İyileştirmeleri

Kod İyileştirmeleri'ne iki giriş noktası üzerinden erişebilirsiniz:

Kod İyileştirmeleri birleştirilmiş genel bakış sayfası (önizleme)

Kod İyileştirmeleri genel bakış sayfasını kullanarak Kod İyileştirmeleri sonuçlarınızı görüntüleyin. Bu derlenmiş genel bakışta, birden çok Application Insights kaynağı için birden çok abonelikteki sonuçlara erişebilirsiniz.

Kod İyileştirmeleri birleştirilmiş genel bakış sayfasının ekran görüntüsü.

Bir filtre alanı arayarak veya aşağıdaki filtreleri ayarlayarak birleştirilmiş sonuçları filtreleyebilirsiniz:

Filtre Açıklama Varsayılan
Zaman Aralığı Kod İyileştirmeleri sonuçlarını görüntülemek istediğiniz zaman aralığını seçin. Son 24 Saat
Rol Raporlama hizmetleri makinesine veya iş yüküne atanan rol adı. Application Insights yapılandırması aracılığıyla güncelleştirilebilir. Tüm Roller
Abonelik İçgörülerin ait olduğu abonelik. Birden fazla seçim yapabilirsiniz. Mevcut Değil
Application Insights Uygulamanızın ilişkilendirildiği Application Insights kaynağı. Birden fazla seçim yapabilirsiniz. Mevcut Değil
İçgörü Türü CPU, bellek, engelleme ve özel durumlar gibi sorun türü. Tüm Türler

Ardından içgörü sonuçlarındaki sütunları istediğiniz görünüme göre sıralayabilirsiniz; örneğin:

  • Performans sorunu
  • Üst yöntemin tam adı

Tek tek Application Insights kaynakları

Bu kaynağın sol menüsünden her bir Application Insights kaynağına özgü Kod İyileştirmelerine erişebilirsiniz. Performansı> seçin ve üstteki menüden Kod İyileştirmeleri düğmesini seçin.

Performans sayfasında bulunan Kod İyileştirmeleri'nin ekran görüntüsü.

Bir filtre alanı arayarak veya aşağıdaki filtreleri ayarlayarak birleştirilmiş sonuçları filtreleyebilirsiniz:

Filtre Açıklama Varsayılan
Zaman Aralığı Kod İyileştirmeleri sonuçlarını görüntülemek istediğiniz zaman aralığını seçin. Son 24 Saat
Rol Raporlama hizmetleri makinesine veya iş yüküne atanan rol adı. Application Insights yapılandırması aracılığıyla güncelleştirilebilir. Tüm Roller
İçgörü Türü CPU, bellek, engelleme ve özel durumlar gibi sorun türü. Tüm Türler

Ardından içgörü sonuçlarındaki sütunları istediğiniz görünüme göre sıralayabilirsiniz; örneğin:

  • Performans sorunu
  • Bu sorunu içeren profil sayısı
  • Üst yöntemin tam adı

Tahmini Bellek ve CPU en yüksek kullanım yüzdelerini yorumlama

Tahmini CPU ve Bellek, uygulamanızdaki etkinlik miktarına göre belirlenir. Bellek ve CPU yüzdelerine ek olarak Kod İyileştirmeleri şunları da içerir:

  • Gerçek ayırma boyutları (bayt cinsinden)
  • Çağrı kapsamında ayrılmış türlerin dökümü

Hafıza

Bellek için sayı, izde yapılan tüm ayrımların yüzde oranıdır. Örneğin, bir sorun 24% bellek alıyorsa, bu çağrıda ayırmalarınızın 24% harcamış olursunuz.

İşlemci (CPU)

CPU için yüzde, makinenizdeki CPU sayısını (dört çekirdek, sekiz çekirdek vb.) ve izleme süresini temel alır. Örneğin, izlemenizin 10 saniye uzun olduğunu ve 4 CPU'nuz olduğunu varsayalım: toplam 40 saniye CPU süreniz vardır. İçgörü, kod satırının CPU'nun %5'ini kullandığını belirtiyorsa, bu, 40 saniyelik sürenin %5'i veya 2 saniye kullanıldığı anlamına gelir.

Engelleme

İş parçacıklarının G/Ç işlemleri, kilitler veya uyku gibi kaynakları beklerken zaman harcadığı yeri gösterir. Engelleme süresi saniye cinsinden raporlanır ve tüm iş parçacıkları ve çekirdekler üzerinde toplanır; bu nedenle, toplamlar CPU ölçümleriyle aynı toplama kuralını izleyerek yakalama süresini aşabilir.

Aşağıdakiler gibi gecikme süresi performans sorunlarını belirlemek için bu ölçümü kullanın:

  • İş parçacıkları arasındaki çekişmeyi kilitleme
  • Senkron G/Ç işlemleri
  • Zaman uyumsuz işlemlerde çağrıları engelleme

Exceptions

Özel durum içgörüleri, Snapshot Debugger tarafından toplanan anlık görüntülerden ayıklanır. Uygulamanızda Snapshot Debugger etkinse ve anlık görüntüler toplanıyorsa Kod İyileştirmeleri'nde içgörü ayıklama için otomatik olarak işlenir.

İçgörüleri görüntüle

Kod İyileştirmeleri sonuçlarını sıraladıktan ve filtreledikten sonra, aşağıdaki ayrıntıları bir bölmede görüntülemek için her içgörüyi seçebilirsiniz:

  • Performans hatası içgörülerinin ayrıntılı açıklaması.
  • Tam çağrı yığını.
  • Performans sorununun nasıl düzeltileceğini gösteren öneriler.
  • Sorunun eğilim etkisinin ve eşiğinin zaman çizelgesi.

İçgörüler

İçgörüler sekmesi aşağıdakileri sağlar:

  • Seçili sorunun kısa bir açıklaması.
  • Kaynak belleğinizin veya CPU kullanımınızın geçerli koşulu.
  • Sorunu çözmek için yapay zeka tarafından oluşturulan bir öneri.

Belirli bir Kod İyileştirmeleri CPU sonucunun ayrıntı bölmesinin ekran görüntüsü.

Uyarı

Herhangi bir içgörü görmüyorsanız Kod İyileştirme hizmeti büyük olasılıkla kodunuzda herhangi bir performans sorunu fark etmemiş olabilir. İçgörülerin görünür olup olmadığını kontrol etmek için tekrar gözden geçirin.

Çağrı Yığını

İçgörü ayrıntıları bölmesinde, Çağrı Yığını başlığı altında şunları yapabilirsiniz:

  • Performans sorununu çevreleyen tam çağrı yığınını görüntülemek için Genişlet'i seçin.
  • Çağrı yığınını kopyalamak için Kopyala'yı seçin.

Daha önce elde edilen belirli CPU sonucunun ayrıntı bölmesindeki çağrı yığını başlığının ekran görüntüsü.

Daha önce elde edilen belirli CPU sonucu için genişletilmiş çağrı yığınının ekran görüntüsü.

Zaman Çizelgesi

Ayrıntılar bölmesindeki Zaman Çizelgesi'nin altında belirli bir performans sorununun etkisini ve eşiğini gösteren grafiği de görüntüleyebilirsiniz. Sonuçlar, ayarladığınız filtrelere bağlı olarak değişir. Örneğin, "Bellek Verimsizliği String.SubString()" performans sorununun son 24 saatte gözlenen analizleri şu şekilde olabilir:

Yedi günlük CPU eğilimi etkisinin ekran görüntüsü.

Sonraki adım

Azure portal