Application Insights günlük tabanlı ölçümleri

Uygulama Analizler günlük tabanlı ölçümler izlenen uygulamalarınızın durumunu analiz etmenizi, güçlü panolar oluşturmanızı ve uyarıları yapılandırmanızı sağlar. İki tür ölçüm vardır:

Standart ölçümler toplama sırasında önceden toplandığından sorgu zamanında daha iyi performansa sahiptir. Bu sayede pano oluşturma ve gerçek zamanlı uyarılar için daha iyi bir seçim olur. Günlük tabanlı ölçümler daha fazla boyuta sahiptir ve bu da bunları veri analizi ve geçici tanılama için üstün seçenek haline getirir. Ölçüm gezgininde günlük tabanlı ve standart ölçümler arasında geçiş yapmak için ad alanı seçicisini kullanın.

Bu makaledeki sorguları yorumlama ve kullanma

Bu makalede desteklenen toplamalar ve boyutlar içeren ölçümler listelenmektedir. Günlük tabanlı ölçümlerle ilgili ayrıntılar, temel alınan Kusto sorgu deyimlerini içerir. Kolaylık sağlamak için her sorguda zaman ayrıntı düzeyi, grafik türü ve bazen boyut bölme için varsayılan değerler kullanılır ve bu da log analytics'te sorgunun değiştirilmesine gerek kalmadan kullanılmasını kolaylaştırır.

Ölçüm gezgininde aynı ölçümü çizdiğinizde varsayılan değer yoktur; sorgu grafik ayarlarınıza göre dinamik olarak ayarlanır:

  • Seçilen Zaman aralığı, yalnızca seçilen zaman aralığından olayları seçmek için ek bir zaman damgası... yan tümcesine çevrilir. Örneğin, en son 24 saat için verileri gösteren bir grafik, sorgu | where timestamp > ago(24 s) içerir.

  • Seçilen Zaman ayrıntı düzeyi son özete konur... by bin(timestamp, [time grain]) yan tümcesi.

  • Seçilen Tüm Filtre boyutları ek where yan tümcelerine çevrilir.

  • Seçilen Bölünmüş grafik boyutu fazladan bir özetleme özelliğine çevrilir. Örneğin, grafiğinizi konuma göre böler ve 5 dakikalık zaman ayrıntı düzeyi kullanarak çizerseniz summarize yan tümcesi özetlenmiş olur ... tarafından bin(zaman damgası, 5 m), konum.

Dekont

Kusto sorgu dilini kullanmaya yeni başladıysanız, değişiklik yapmadan Kusto deyimlerini kopyalayıp Log Analytics sorgu bölmesine yapıştırarak işe başlarsınız. Temel grafiği görmek için Çalıştır'a tıklayın. Sorgu dilinin söz dizimini anlamaya başladığınızda, küçük değişiklikler yapmaya başlayabilir ve değişikliğinizin etkisini görebilirsiniz. Kendi verilerinizi keşfetmek, Log Analytics ve Azure İzleyici'nin tüm gücünü hayata geçirmenin harika bir yoludur.

Kullanılabilirlik ölçümleri

Kullanılabilirlik kategorisindeki ölçümler, web uygulamanızın durumunu dünyanın dört bir yanındaki noktalardan gözlemlendiği şekilde görmenizi sağlar. Bu kategorideki ölçümleri kullanmaya başlamak için kullanılabilirlik testlerini yapılandırın.

Kullanılabilirlik (availabilityResults/availabilityPercentage)

Kullanılabilirlik ölçümü, herhangi bir sorun algılamamış web testi çalıştırmalarının yüzdesini gösterir. Mümkün olan en düşük değer 0'dır ve bu da tüm web testi çalıştırmalarının başarısız olduğunu gösterir. 100 değeri, tüm web testi çalıştırmalarının doğrulama ölçütlerini geçtiği anlamına gelir.

Ölçü birimi Desteklenen toplamalar Desteklenen boyutlar
Yüzde Ortalama Çalıştırma konumu, Test adı
availabilityResults 
| summarize sum(todouble(success == 1) * 100) / count() by bin(timestamp, 5m), location
| render timechart

Kullanılabilirlik testi süresi (availabilityResults/duration)

Kullanılabilirlik testi süresi ölçümü, web testinin çalıştırılmasının ne kadar sürdüğünü gösterir. Çok adımlı web testlerinde ölçüm, tüm adımların toplam yürütme süresini yansıtır.

Ölçü birimi Desteklenen toplamalar Desteklenen boyutlar
Milisaniye Ortalama, En Az, En Fazla Çalıştırma konumu, Test adı, Test sonucu
availabilityResults
| where notempty(duration)
| extend availabilityResult_duration = iif(itemType == 'availabilityResult', duration, todouble(''))
| summarize sum(availabilityResult_duration)/sum(itemCount) by bin(timestamp, 5m), location
| render timechart

Kullanılabilirlik testleri (availabilityResults/count)

Kullanılabilirlik testleri ölçümü, Azure İzleyici tarafından çalıştırılan web testlerinin sayısını yansıtır.

Ölçü birimi Desteklenen toplamalar Desteklenen boyutlar
Count Count Çalıştırma konumu, Test adı, Test sonucu
availabilityResults
| summarize sum(itemCount) by bin(timestamp, 5m)
| render timechart

Tarayıcı ölçümleri

Tarayıcı ölçümleri, gerçek son kullanıcı tarayıcılarından Application Analizler JavaScript SDK'sı tarafından toplanır. Bunlar, kullanıcılarınızın web uygulamanızla ilgili deneyimi hakkında harika içgörüler sağlar. Tarayıcı ölçümleri genellikle örneklenmez; başka bir deyişle, örneklemeyle çarpıtılmış olabilecek sunucu tarafı ölçümlerle karşılaştırıldığında kullanım numaralarının daha yüksek duyarlığı sağlanır.

Dekont

Tarayıcı ölçümlerini toplamak için uygulamanızın Application Analizler JavaScript SDK'sı ile izlenmelidir.

Tarayıcı sayfası yükleme süresi (browserTimings/totalDuration)

DOM, stil sayfaları, betikler ve görüntüler yüklenene kadar kullanıcı isteğinden gelen süre.

Ölçü birimi Desteklenen toplamalar Önceden toplanmış boyutlar
Milisaniye Ortalama, En Az, En Fazla Hiçbiri
browserTimings
| where notempty(totalDuration)
| extend _sum = totalDuration
| extend _count = itemCount
| extend _sum = _sum * _count
| summarize sum(_sum) / sum(_count) by bin(timestamp, 5m)
| render timechart

İstemci işleme süresi (browserTiming/processingDuration)

DOM yüklenene kadar belgenin son baytını alma arasındaki süre. Zaman uyumsuz istekler hala işleniyor olabilir.

Ölçü birimi Desteklenen toplamalar Önceden toplanmış boyutlar
Milisaniye Ortalama, En Az, En Fazla Hiçbiri
browserTimings
| where notempty(processingDuration)
| extend _sum = processingDuration
| extend _count = itemCount
| extend _sum = _sum * _count
| summarize sum(_sum)/sum(_count) by bin(timestamp, 5m)
| render timechart

Sayfa yükleme ağ bağlantı süresi (browserTimings/networkDuration)

Kullanıcı isteği ile ağ bağlantısı arasındaki süre. DNS arama ve aktarım bağlantısını içerir.

Ölçü birimi Desteklenen toplamalar Önceden toplanmış boyutlar
Milisaniye Ortalama, En Az, En Fazla Hiçbiri
browserTimings
| where notempty(networkDuration)
| extend _sum = networkDuration
| extend _count = itemCount
| extend _sum = _sum * _count
| summarize sum(_sum) / sum(_count) by bin(timestamp, 5m)
| render timechart

Yanıt alma süresi (browserTimings/receiveDuration)

İlk ve son bayt arasındaki veya bağlantı kesilene kadar geçen süre.

Ölçü birimi Desteklenen toplamalar Önceden toplanmış boyutlar
Milisaniye Ortalama, En Az, En Fazla Hiçbiri
browserTimings
| where notempty(receiveDuration)
| extend _sum = receiveDuration
| extend _count = itemCount
| extend _sum = _sum * _count
| summarize sum(_sum) / sum(_count) by bin(timestamp, 5m)
| render timechart

İstek gönderme süresi (browserTimings/sendDuration)

Ağ bağlantısı ile ilk baytı alma arasındaki süre.

Ölçü birimi Desteklenen toplamalar Önceden toplanmış boyutlar
Milisaniye Ortalama, En Az, En Fazla Hiçbiri
browserTimings
| where notempty(sendDuration)
| extend _sum = sendDuration
| extend _count = itemCount
| extend _sum = _sum * _count
| summarize sum(_sum) / sum(_count) by bin(timestamp, 5m)
| render timechart

Hata ölçümleri

Hatalar'daki ölçümler , istekleri işleme, bağımlılık çağrıları ve oluşan özel durumlarla ilgili sorunları gösterir.

Tarayıcı özel durumları (özel durumlar/tarayıcı)

Bu ölçüm, tarayıcıda çalışan uygulama kodunuzdan oluşan özel durumların sayısını yansıtır. Ölçüme yalnızca Uygulama Analizler API çağrısıyla trackException() izlenen özel durumlar dahildir.

Ölçü birimi Desteklenen toplamalar Önceden toplanmış boyutlar Notlar
Count Count Hiçbiri Günlük tabanlı sürüm Toplam toplamayı kullanır
exceptions
| where notempty(client_Browser)
| summarize sum(itemCount) by bin(timestamp, 5m)
| render barchart

Bağımlılık çağrısı hataları (bağımlılıklar/başarısız)

Başarısız bağımlılık çağrılarının sayısı.

Ölçü birimi Desteklenen toplamalar Önceden toplanmış boyutlar Notlar
Count Count Hiçbiri Günlük tabanlı sürüm Toplam toplamayı kullanır
dependencies
| where success == 'False'
| summarize sum(itemCount) by bin(timestamp, 5m)
| render barchart

Özel durumlar (özel durumlar/sayı)

Application Analizler'da her özel durum kaydettiğinizde, SDK'nın trackException() yöntemine bir çağrı yapılır. Özel Durumlar ölçümü, günlüğe kaydedilen özel durumların sayısını gösterir.

Ölçü birimi Desteklenen toplamalar Önceden toplanmış boyutlar Notlar
Count Count Bulut rolü adı, Bulut rolü örneği, Cihaz türü Günlük tabanlı sürüm Toplam toplamayı kullanır
exceptions
| summarize sum(itemCount) by bin(timestamp, 5m)
| render barchart

Başarısız istekler (istekler/başarısız)

Başarısız olarak işaretlenen izlenen sunucu isteklerinin sayısı. Varsayılan olarak, Uygulama Analizler SDK'sı 5xx veya 4xx HTTP yanıt kodunu döndüren her sunucu isteğini otomatik olarak başarısız istek olarak işaretler. Özel bir telemetri başlatıcıda istek telemetri öğesinin başarı özelliğini değiştirerek bu mantığı özelleştirebilirsiniz.

Ölçü birimi Desteklenen toplamalar Önceden toplanmış boyutlar Notlar
Count Count Bulut rolü örneği, Bulut rolü adı, Gerçek veya yapay trafik, İstek performansı, Yanıt kodu Günlük tabanlı sürüm Toplam toplamayı kullanır
requests
| where success == 'False'
| summarize sum(itemCount) by bin(timestamp, 5m)
| render barchart

Sunucu özel durumları (özel durumlar/sunucu)

Bu ölçüm, sunucu özel durumlarının sayısını gösterir.

Ölçü birimi Desteklenen toplamalar Önceden toplanmış boyutlar Notlar
Count Count Bulut rolü adı, Bulut rolü örneği Günlük tabanlı sürüm Toplam toplamayı kullanır
exceptions
| where isempty(client_Browser)
| summarize sum(itemCount) by bin(timestamp, 5m)
| render barchart

Performans sayaçları

Uygulama Analizler tarafından toplanan sistem performans sayaçlarına erişmek için Performans sayaçları kategorisindeki ölçümleri kullanın.

Kullanılabilir bellek (performanceCounters/availableMemory)

performanceCounters
| where ((category == "Memory" and counter == "Available Bytes") or name == "availableMemory")
| extend performanceCounter_value = iif(itemType == "performanceCounter", value, todouble(''))
| summarize sum(performanceCounter_value) / count() by bin(timestamp, 1m)
| render timechart

Özel durum oranı (performanceCounters/exceptionRate)

performanceCounters
| where ((category == ".NET CLR Exceptions" and counter == "# of Exceps Thrown / sec") or name == "exceptionRate")
| extend performanceCounter_value = iif(itemType == 'performanceCounter',value,todouble(''))
| summarize sum(performanceCounter_value) / count() by bin(timestamp, 1m)
| render timechart

HTTP isteği yürütme süresi (performanceCounters/requestExecutionTime)

performanceCounters
| where ((category == "ASP.NET Applications" and counter == "Request Execution Time") or name == "requestExecutionTime")
| extend performanceCounter_value = iif(itemType == "performanceCounter", value, todouble(''))
| summarize sum(performanceCounter_value) / count() by bin(timestamp, 1m)
| render timechart

HTTP istek oranı (performanceCounters/requestsPerSecond)

performanceCounters
| where ((category == "ASP.NET Applications" and counter == "Requests/Sec") or name == "requestsPerSecond")
| extend performanceCounter_value = iif(itemType == "performanceCounter", value, todouble(''))
| summarize sum(performanceCounter_value) / count() by bin(timestamp, 1m)
| render timechart

Uygulama kuyruğundaki HTTP istekleri (performanceCounters/requestsInQueue)

performanceCounters
| where ((category == "ASP.NET Applications" and counter == "Requests In Application Queue") or name == "requestsInQueue")
| extend performanceCounter_value = iif(itemType == "performanceCounter", value, todouble(''))
| summarize sum(performanceCounter_value) / count() by bin(timestamp, 1m)
| render timechart

İşlem CPU'sunu (performanceCounters/processCpuPercentage)

Ölçüm, izlenen uygulamanızı barındıran işlem tarafından toplam işlemci kapasitesinin ne kadarının tüketildiğini gösterir.

Ölçü birimi Desteklenen toplamalar Desteklenen boyutlar
Yüzde Ortalama, En Az, En Fazla Bulut rol örneği
performanceCounters
| where ((category == "Process" and counter == "% Processor Time Normalized") or name == "processCpuPercentage")
| extend performanceCounter_value = iif(itemType == "performanceCounter", value, todouble(''))
| summarize sum(performanceCounter_value) / count() by bin(timestamp, 1m)
| render timechart

Dekont

Ölçümün aralığı 0 ile 100 * n arasındadır; burada n kullanılabilir CPU çekirdeği sayısıdır. Örneğin, %200 ölçüm değeri iki CPU çekirdeğinin tam kullanımını veya 4 CPU çekirdeğinin yarı kullanımını temsil edebilir. İşlem CPU Normalleştirilmiş, aynı değeri temsil eden ancak kullanılabilir CPU çekirdeği sayısına bölen birçok SDK tarafından toplanan alternatif bir ölçümdür. Bu nedenle İşlem CPU Normalleştirilmiş ölçümü aralığı 0 ile 100 arasındadır.

İşlem GÇ oranı (performanceCounters/processIOBytesPerSecond)

Ölçü birimi Desteklenen toplamalar Desteklenen boyutlar
Saniye başına bayt sayısı Ortalama, En Az, En Fazla Bulut rol örneği
performanceCounters
| where ((category == "Process" and counter == "IO Data Bytes/sec") or name == "processIOBytesPerSecond")
| extend performanceCounter_value = iif(itemType == "performanceCounter", value, todouble(''))
| summarize sum(performanceCounter_value) / count() by bin(timestamp, 1m)
| render timechart

İşlem özel baytları (performanceCounters/processPrivateBytes)

İzlenen işlemin verileri için ayırmış olduğu paylaşılmayan bellek miktarı.

Ölçü birimi Desteklenen toplamalar Desteklenen boyutlar
Bayt Ortalama, En Az, En Fazla Bulut rol örneği
performanceCounters
| where ((category == "Process" and counter == "Private Bytes") or name == "processPrivateBytes")
| extend performanceCounter_value = iif(itemType == "performanceCounter", value, todouble(''))
| summarize sum(performanceCounter_value) / count() by bin(timestamp, 1m)
| render timechart

İşlemci süresi (performanceCounters/processorCpuPercentage)

İzlenen sunucu örneğinde çalışan tüm işlemler tarafından CPU tüketimi.

Ölçü birimi Desteklenen toplamalar Desteklenen boyutlar
Yüzde Ortalama, En Az, En Fazla Bulut rol örneği

Dekont

İşlemci süresi ölçümü, Azure Uygulaması Hizmetleri'nde barındırılan uygulamalar için kullanılamaz. App Services'te barındırılan web uygulamalarının CPU kullanımını izlemek için İşlem CPU ölçümünü kullanın.

performanceCounters
| where ((category == "Processor" and counter == "% Processor Time") or name == "processorCpuPercentage")
| extend performanceCounter_value = iif(itemType == "performanceCounter", value, todouble(''))
| summarize sum(performanceCounter_value) / count() by bin(timestamp, 1m)
| render timechart

Sunucu ölçümleri

Bağımlılık çağrıları (bağımlılıklar/sayı)

Bu ölçüm, bağımlılık çağrılarının sayısıyla ilişkilidir.

dependencies
| summarize sum(itemCount) by bin(timestamp, 5m)
| render barchart

Bağımlılık süresi (bağımlılıklar/süre)

Bu ölçüm bağımlılık çağrılarının süresini ifade eder.

dependencies
| where notempty(duration)
| extend dependency_duration = iif(itemType == 'dependency',duration,todouble(''))
| extend _sum = dependency_duration
| extend _count = itemCount
| extend _sum = _sum*_count
| summarize sum(_sum)/sum(_count) by bin(timestamp, 1m)
| render timechart

Sunucu istekleri (istekler/sayı)

Bu ölçüm, web uygulamanız tarafından alınan gelen sunucu isteklerinin sayısını yansıtır.

requests
| summarize sum(itemCount) by bin(timestamp, 5m)
| render barchart

Sunucu yanıt süresi (istekler/süre)

Bu ölçüm, sunucuların gelen istekleri işlemesi için geçen süreyi yansıtır.

requests
| where notempty(duration)
| extend request_duration = iif(itemType == 'request', duration, todouble(''))
| extend _sum = request_duration
| extend _count = itemCount
| extend _sum = _sum*_count
| summarize sum(_sum) / sum(_count) by bin(timestamp, 1m)
| render timechart

Ölçümleri kullanma

Sayfa görünümü yükleme süresi (pageViews/duration)

Bu ölçüm, PageView olaylarının yüklenmesi için geçen süreyi ifade eder.

pageViews
| where notempty(duration)
| extend pageView_duration = iif(itemType == 'pageView', duration, todouble(''))
| extend _sum = pageView_duration
| extend _count = itemCount
| extend _sum = _sum * _count
| summarize sum(_sum) / sum(_count) by bin(timestamp, 5m)
| render barchart

Sayfa görünümleri (pageViews/count)

TrackPageView() Uygulaması Analizler API'siyle günlüğe kaydedilen PageView olaylarının sayısı.

pageViews
| summarize sum(itemCount) by bin(timestamp, 1h)
| render barchart

Oturumlar (oturumlar/sayı)

Bu ölçüm, ayrı oturum kimliklerinin sayısını ifade eder.

union traces, requests, pageViews, dependencies, customEvents, availabilityResults, exceptions, customMetrics, browserTimings
| where notempty(session_Id)
| summarize dcount(session_Id) by bin(timestamp, 1h)
| render barchart

İzlemeler (izlemeler/sayı)

TrackTrace() Uygulaması Analizler API çağrısıyla günlüğe kaydedilen izleme deyimlerinin sayısı.

traces
| summarize sum(itemCount) by bin(timestamp, 1h)
| render barchart

Kullanıcılar (kullanıcılar/sayı)

Uygulamanıza erişen ayrı kullanıcıların sayısı. Telemetri örnekleme ve filtreleme kullanılarak bu ölçümün doğruluğu önemli ölçüde etkilenebilir.

union traces, requests, pageViews, dependencies, customEvents, availabilityResults, exceptions, customMetrics, browserTimings
| where notempty(user_Id)
| summarize dcount(user_Id) by bin(timestamp, 1h)
| render barchart

Kullanıcılar, Kimliği Doğrulanmış (kullanıcılar/kimliği doğrulanmış)

Uygulamanızda kimlik doğrulaması yapan farklı kullanıcıların sayısı.

union traces, requests, pageViews, dependencies, customEvents, availabilityResults, exceptions, customMetrics, browserTimings
| where notempty(user_AuthenticatedId)
| summarize dcount(user_AuthenticatedId) by bin(timestamp, 1h)
| render barchart