Tüm Ürünler
Search
Belge Merkezi

Application Real-Time Monitoring Service:İz örnekleme modları (Aracı V3.2.8 veya üzeri)

Son Güncelleme:Oct 05, 2026

Bu konu, ARMS tarafından desteklenen çeşitli iz örnekleme modlarını açıklar. İhtiyacınız olan iz verilerini daha düşük bir maliyetle elde etmek için senaryonuza uygun bir mod seçebilirsiniz.

Temel kavramlar

  • span: Bir istekteki belirli bir işlem; örneğin, uzak çağrı girişi veya dahili bir yöntem çağrısı.

  • root span: Bir izdeki ilk span.

  • local root span: Tek bir uygulama içindeki bir iz segmentinin ilk span'ı.

  • span context: Aynı iz içindeki tüm işlemleri birbirine bağlamak amacıyla istekle birlikte yayılan bilgiler.

  • head-based sampling: Yalnızca root span üzerinde uygulanan bir örnekleme stratejisi. Bu yöntem çoğu durumda eksiksiz bir iz korur.

  • non-head-based sampling: Head-based sampling izi örneklememişse herhangi bir local root span üzerinde tetiklenebilen bir örnekleme stratejisi. Bu yöntem genellikle eksiksiz bir iz garantisini sağlayamaz.

Örnekleme stratejileri ve işaretleri

ARMS, daha değerli iz verilerini yakalamanıza yardımcı olmak üzere iki head-based ve üç non-head-based örnekleme stratejisi dahil olmak üzere birden fazla örnekleme stratejisi sunar.

Örnekleme işaretleri

Bir iz bağlamını süreçler arasında yaymak için EagleEye protokolünü kullandığınızda ARMS, izin örneklenip örneklenmediğini kaydeder. İstek başlığı anahtarı EagleEye-Sampled şeklindedir ve değeri şu olabilir:

  • s0: Örneklenmedi

  • s1: Örneklenmiş

Bir izin örneklenmesinin gerçekleştiği local root span üzerinde, örnekleme nedeni sample.reason anahtarına sahip bir span niteliği olarak kaydedilir. Olası değerler şunlardır:

  • s2: tüm arayüzler için minimum örnekleme

  • s3: özel örnekleme

  • s4: sabit oranlı örnekleme

  • s5: Ayrılmış

  • s6: uyarlamalı örnekleme

  • s7: Ayrılmış

  • s8: Basic Edition örnekleme

  • s9: başarısız istek örnekleme

  • s10: yavaş istek örnekleme

  • s11: anormal çağrı örnekleme

  • s12: iş izi örnekleme

Head-based örnekleme stratejileri

ARMS, dağıtılmış izlemede en yaygın yaklaşım olan sabit oranlı örnekleme ile ARMS tarafından geliştirilen maliyet açısından verimli bir alternatif olan uyarlamalı örnekleme olmak üzere iki head-based örnekleme stratejisi sunar.

Sabit oranlı örnekleme

Bu strateji, belirtilen bir yüzdelik orana göre istek giriş noktasında izleri örnekleme alır. Bu strateji kullanılarak örneklenen span'lar, sample.reason niteliği ve s4 değeriyle işaretlenir. İz ayrıntıları sayfasında span nitelikleri arasında sample.reason alanı bulunur; sabit oranlı örnekleme için bu alanın değeri s4 olur.

Sabit oranlı örnekleme yapılandırmak için:

  1. ARMS konsoluna giriş yapın. Sol gezinme bölmesinde Application Monitoring > Application List seçeneklerini belirleyin.

  2. Application List sayfasının üst kısmında hedef bölgeyi seçin ve ardından hedef uygulamayı tıklayın.

    Not

    Language sütunundaki simgeler aşağıdaki anlamlara gelir:

    Java icon: Application Monitoring'e bağlı bir Java uygulaması.

    image: Application Monitoring tarafından izlenen bir Go uygulaması.

    image: Application Monitoring tarafından izlenen bir Python uygulaması.

    -: Managed Service for OpenTelemetry ile entegre edilmiş bir uygulama.

  3. Üst gezinti çubuğunda Application Configuration > Custom Configurations seçeneklerini belirleyin.

  4. Sampling Settings bölümünde Sampling strategy seçeneğini Fixed sampling rate olarak ayarlayın. Sample Rate Percentage alanına bir sayı girin. Örneğin, izlerin %10'unu örneklemek için 10 girin.

    Not

    Değişiklikler, uygulama yeniden başlatma gerektirmeden hemen etkili olur. Java ve Go uygulamaları için varsayılan değer 10, Python uygulamaları için ise 100'dür. Daha yüksek bir örnekleme oranı daha fazla sistem kaynağı tükettiğinden varsayılan değeri korumanızı öneririz.

  5. Save seçeneğini tıklayın.

Uyarlamalı örnekleme

Gerçek dünya senaryolarında bir uygulamanın farklı hizmetleri arasındaki trafik büyük farklılıklar gösterebilir. Okuma arayüzleri genellikle yazma arayüzlerinden çok daha fazla istek alır ancak iz verileri genellikle daha az değerlidir. Sabit oranlı örnekleme yönteminin yüksek trafikli ve düşük değerli izlerin aşırı sayıda yakalanmasına neden olmasını önlemek için ARMS uyarlamalı bir örnekleme stratejisi sunar. Bu strateji, sıklık tabanlı bir algoritma kullanarak çağrı hacmine göre en iyi 1.000 arayüzü seçer. Bu arayüzlerin her biri için örnekleme izole edilir ve saniyede 10 iz oranında uygulanır. En iyi 1.000'in dışındaki arayüzler tek bir "Diğer" kategorisinde gruplanır ve bu kategori saniyede toplam 10 izlik ortak bir kotayı paylaşır. Bu strateji tarafından örneklenen span'lar, sample.reason niteliği ve s6 değeriyle işaretlenir. Uyarlamalı örnekleme etkinleştirildikten sonra span niteliklerinde bu sample.reason değerini görüntüleyebilirsiniz; s6 değeri bu örnekleme nedenini gösterir.

Uyarlamalı örnekleme yapılandırmak için:

  1. ARMS konsoluna giriş yapın. Sol gezinme bölmesinde Application Monitoring > Application List seçeneklerini belirleyin.

  2. Application List sayfasının üst kısmında hedef bölgeyi seçin ve ardından hedef uygulamayı tıklayın.

    Not

    Language sütunundaki simgeler aşağıdaki anlamlara gelir:

    Java icon: Application Monitoring'e bağlı bir Java uygulaması.

    image: Application Monitoring tarafından izlenen bir Go uygulaması.

    image: Application Monitoring tarafından izlenen bir Python uygulaması.

    -: Managed Service for OpenTelemetry ile entegre edilmiş bir uygulama.

  3. Üst gezinti çubuğunda Application Configuration > Custom Configurations seçeneklerini belirleyin.

  4. Sampling Settings bölümünde Sampling strategy seçeneğini Adaptive Sampling olarak ayarlayın.

    Not

    Değişiklikler, uygulama yeniden başlatma gerektirmeden hemen etkili olur.

  5. Save seçeneğini tıklayın.

Non-head-based örnekleme stratejileri

Head-based örnekleme stratejileri, hatalı, yüksek gecikme süreli veya özel durum içeren span'lar ile çok düşük trafikli veya özel tanımlanmış arayüzlerden gelen span'lar gibi genellikle yüksek ilgi gören belirli özelliklere sahip span'ların yakalanmasını garanti edemez. Bu stratejiler iz içindeki herhangi bir noktada örnekleme kararı aldığından iz bütünlüğünü garanti edemezler.

Tüm arayüzler için minimum örnekleme

Yapılandırma gerekmez. Bu strateji, her arayüz için dakikada en az bir izin otomatik olarak örneklenmesini sağlar. Bu şekilde örneklenen span'lar, sample.reason niteliği ve s2 değeriyle işaretlenir.

Başarısız veya yavaş istekler için örnekleme

Önemli

Bu örnekleme stratejisini kullanmak için Custom Configurations sayfasındaki Call chain compression özelliğinin etkin olduğundan emin olun. Bu özellik varsayılan olarak etkindir.

Aşağıdaki koşullardan herhangi birini karşılayan bir arayüz çağrısı söz konusuysa iz örneklenir:

  • Arayüz hatası: HTTP tabanlı arayüzler için yanıt kodu 200 değildir. Diğer arayüz türleri için instrument edilen yöntem bir özel durum oluşturur.

  • Dahili yürütme özel durumu: Bir arayüz çağrısının dahili yürütmesi sırasında bir özel durum oluşur ancak bu durum çerçevenin giriş noktası instrumentasyonuna yansıtılmaz.

  • Yüksek gecikme süresi: Bir arayüzün çağrı süresi, Custom Configurations sayfasında yapılandırılan arayüz slow-call threshold değerini aşar.

    Not

    Kuantil istatistikleri de etkinleştirilirse çağrı süresi o arayüz için P99 gecikme süresini aştığında yavaş istek örnekleme kuralı da tetiklenir.

Bu nedenlerle örneklenen span'lar, sırasıyla sample.reason niteliğine s9 (arayüz hatası), s11 (dahili özel durum) veya s10 (yüksek gecikme süresi) değeri atanacak şekilde işaretlenir.

Özel örnekleme

Diğer örnekleme stratejileri ihtiyacınız olan tüm izleri yakalamıyorsa belirli arayüzlerin her zaman örneklenmesini (%100 örnekleme oranı) sağlamak için özel örnekleme kullanabilirsiniz. Arayüzleri tam adlarına, bir ön eklerine veya son eklerine göre tanımlayabilirsiniz. Bu strateji tarafından örneklenen bir span, sample.reason anahtarına ve s3 değerine sahip bir nitelik taşır.

Özel örnekleme yapılandırmak için:

  1. ARMS konsoluna giriş yapın. Sol gezinme bölmesinde Application Monitoring > Application List seçeneklerini belirleyin.

  2. Application List sayfasının üst kısmında hedef bölgeyi seçin ve ardından hedef uygulamayı tıklayın.

    Not

    Language sütunundaki simgeler aşağıdaki anlamlara gelir:

    Java icon: Application Monitoring'e bağlı bir Java uygulaması.

    image: Application Monitoring tarafından izlenen bir Go uygulaması.

    image: Application Monitoring tarafından izlenen bir Python uygulaması.

    -: Managed Service for OpenTelemetry ile entegre edilmiş bir uygulama.

  3. Üst gezinti çubuğunda Application Configuration > Custom Configurations seçeneklerini belirleyin.

  4. Sampling Settings bölümünde tamamen örneklenmesini istediğiniz arayüzleri, arayüz ön eklerini ve arayüz son eklerini belirtin.

    Not

    Değişiklikler, uygulama yeniden başlatma gerektirmeden hemen etkili olur.

  5. Save seçeneğini tıklayın.

Nasıl çalışır

A > B > C şeklinde bir iz yolunu ele alalım. Bir iş çağrısı için span'ların raporlanmasına ilişkin nihai karar, örnekleme stratejilerinin bir kombinasyonu tarafından belirlenir. Aşağıdaki akış şemasında gösterilen karar süreci, bir istek A, B ve C düğümlerine her ulaştığında çalışır. Ancak mevcut span'ın bir root span mı yoksa local root span mı olduğuna bağlı olarak bazı adımlar atlanır.

Sampling decision flowchart

Akış şemasındaki renkler aşağıdaki anlamlara gelir:

  • Mor: Standart head-based örnekleme. Yalnızca izin root span'ında tetiklenir. A > B > C örneğinde bu strateji yalnızca A'da tetiklenir.

  • Mavi: Head-based örnekleme tetiklenmemişse izdeki herhangi bir düğümde tetiklenebilir. Örneğin, A bir isteği örneklememeye karar verirse B kendi özel örnekleme ve tüm arayüzler için minimum örnekleme stratejilerine dayanarak isteği yeniden değerlendirir. B örnekleme kararı verirse örnekleme işaretini C'ye yayar. Bu strateji A, B ve C'de tetiklenebilir.

  • Yeşil: Mevcut örnekleme kararı "örnekleme" değilse herhangi bir düğümde tetiklenebilir ancak aşağı akış hizmetleri için örnekleme kararını etkilemez. Örneğin, A bir isteği örneklememeye karar verirse B yine de başarısız veya yavaş istekler için örnekleme stratejisine dayanarak isteği örneklemeyi seçebilir. Bu durumda B örnekleme işaretini C'ye yaymaz. Bu strateji A, B ve C'de tetiklenebilir.

İlgili belgeler

İzler toplandıktan sonra çeşitli filtre koşulları ve toplama boyutlarını birleştirerek depolanan verileri gerçek zamanlı olarak analiz edebilirsiniz. Daha fazla bilgi için bkz. iz analizi.