Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
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.
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.
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.
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.
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: