Ölçümleri Toplama
Sayaçları, göstergeleri ve histogramları kaydedin.
Ölçümleri Toplama, CoddyKit'te ücretsiz bir C# Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, C# Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. C# Academy kursu toplamda 4 dersten oluşur.
Ölçümler Neden Önemlidir
Ölçümler, zaman içinde toplanan sayısal değerlerdir. Gösterge panolarını ve uyarıları besler: istek hızı, hata sayısı, gecikme, kuyruk uzunluğu. Günlüklerin aksine, toplama yaptıkları için yüksek hacimlerde de düşük maliyetli kalırlar.
Meter API'si
.NET, ölçümleri System.Diagnostics.Metrics üzerinden üretir. Bir Meter oluşturur, ardından bunu sayaçlar ve histogramlar gibi ölçüm araçları oluşturmak için kullanırsınız.
using System.Diagnostics.Metrics;
private static readonly Meter Meter = new("Checkout.Orders");Sayaçlar
Sayaç, yalnızca artan bir değerdir; siparişler veya hatalar gibi olayları saymak için idealdir. Artırmak için Add çağrısını yaparsınız.
private static readonly Counter<long> OrdersPlaced =
Meter.CreateCounter<long>("orders.placed");
OrdersPlaced.Add(1);Sayaç Boyutları
Durum veya bölge gibi bir boyuta göre ayırmak için sayaca etiketler ekleyin; böylece arka ucunuzda toplama ve filtreleme yapabilirsiniz.
OrdersPlaced.Add(1,
new KeyValuePair<string, object>("status", "completed"),
new KeyValuePair<string, object>("region", "eu"));Histogramlar
Histogram, değerlerin dağılımını kaydeder ve gecikme veya veri yükü boyutları için idealdir. Arka uçlar, kaydedilen örneklerden yüzdelik dilimleri (p50, p95, p99) hesaplar.
private static readonly Histogram<double> OrderDuration =
Meter.CreateHistogram<double>("order.duration", "ms");
OrderDuration.Record(elapsedMs);UpDownCounter'lar
Bir UpDownCounter artabilir veya azalabilir; etkin bağlantılar ya da o anda kuyrukta bulunan öğeler gibi değerler için uygundur.
private static readonly UpDownCounter<long> ActiveOrders =
Meter.CreateUpDownCounter<long>("orders.active");
ActiveOrders.Add(1); // started
ActiveOrders.Add(-1); // finishedGözlemlenebilir Ölçüm Araçları
Gözlemlenebilir ölçüm araçları, bir geri çağırma aracılığıyla gerektiğinde okunur. Artırmak yerine örneklediğiniz mevcut bellek veya önbellek boyutu gibi ölçülen değerler için uygundur.
Meter.CreateObservableGauge("cache.size",
() => _cache.Count);Meter Kaydetme
İzlemede olduğu gibi OTel yalnızca kaydettiğiniz ölçüm araçlarını toplar. Ölçüm aracınızın adıyla birlikte AddMeter kullanın.
builder.Services.AddOpenTelemetry()
.WithMetrics(metrics => metrics
.AddMeter("Checkout.Orders"));Yerleşik Ölçümler
İzleme paketleri, ASP.NET Core (istek süresi, etkin istekler) ve çalışma zamanı (çöp toplama, iş parçacığı havuzu) için kullanıma hazır ölçümler sunarak anında operasyonel görünürlük sağlar.
metrics
.AddAspNetCoreInstrumentation()
.AddRuntimeInstrumentation();Doğru Ölçüm Aracını Seçme
Davranışa göre seçim yapın: tekdüze sayım için Sayaç, yükselip alçalan değer için UpDownCounter, dağılım için Histogram, örneklenen mevcut değer için Gözlemlenebilir Ölçer. Doğru seçim, gösterge panolarını ve uyarıları anlaşılır hâle getirir.
Kardinaliteyi Kontrol Altında Tutma
Her benzersiz etiket birleşimi ayrı bir zaman serisi oluşturur. Kullanıcı kimliği gibi yüksek kardinaliteli etiketler depolama alanını ve maliyeti hızla artırabilir. Durum veya bölge gibi sınırlandırılmış, düşük kardinaliteli boyutlar kullanın.
Kısa Kontrol
Ölçüm toplamayı sınayın.
Özet
Ölçümler, sayısal değerleri düşük maliyetle toplar. Meter API'si ölçüm araçları oluşturur: Sayaç (tekdüze), UpDownCounter (yükselip alçalan), Histogram (yüzdelik dilimler için dağılımlar) ve Gözlemlenebilir ölçerler (örneklenen). Etiketler boyut ekler, ancak kardinaliteye dikkat edin. Ölçüm araçlarını AddMeter ile kaydedin ve anında görünürlük için yerleşik ASP.NET Core ile çalışma zamanı izlemelerini ekleyin.
Sıkça Sorulan Sorular
“Ölçümleri Toplama” dersi ücretsiz mi?
Evet — “Ölçümleri Toplama” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve C# Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. C# Academy kursu toplamda 4 dersten oluşur.
“Ölçümleri Toplama” dersinde ne öğreneceğim?
Sayaçları, göstergeleri ve histogramları kaydedin. C# Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
C# Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te C# Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“Ölçümleri Toplama” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu C# Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her C# Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.