0Pricing
React Academy · Ders

Tarayıcıdan OpenTelemetry İzleri

React'te OTel JavaScript SDK'sını kurun, kullanıcı etkileşimleri için aralıklar oluşturun ve bunları bir arka uç toplayıcısına aktarın.

Tarayıcıdan OpenTelemetry İzleri, CoddyKit'te ücretsiz bir React Academy dersidir. Bu, 4 dersinin 2. 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, React Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. React Academy kursu toplamda 4 dersten oluşur.

OpenTelemetry JavaScript SDK'si

Tarayıcılar için OpenTelemetry JavaScript SDK'si birkaç paketten oluşur: @opentelemetry/sdk-trace-web temel izleme uygulamasını sağlar, @opentelemetry/instrumentation-fetch tüm fetch API çağrıları için otomatik olarak Span'ler oluşturur ve @opentelemetry/exporter-trace-otlp-http Span'leri bir toplayıcıya gönderir.

TracerProvider: OTel İzlemesinin Kökü

TracerProvider, OpenTelemetry'deki merkezî yapılandırma nesnesidir. Tamamlanan Span'lere ne olacağını belirleyen SpanProcessors listesini, uygulamanızı açıklayan kaynağı (hizmet adı ve sürüm) ve örnekleme yapılandırmasını içerir.

BatchSpanProcessor: Verimli Dışa Aktarma

BatchSpanProcessor, her Span'i ayrı ayrı göndermek yerine tamamlanan Span'leri bellekte toplar ve gruplar hâlinde dışa aktarır. Bu, toplayıcınıza yapılan HTTP isteklerinin sayısını büyük ölçüde azaltır; tarayıcı performansını iyileştirir ve OTel toplayıcı uç noktasındaki yükü düşürür.

OTLPTraceExporter: Bir Toplayıcıya Gönderme

OTLPTraceExporter, gruplar hâlindeki Span'leri HTTP üzerinden JSON veya protobuf biçiminde OpenTelemetry uyumlu bir toplayıcıya gönderir. Toplayıcı URL'sini (ör. OpenTelemetry toplayıcınızın vekil uç noktası) yapılandırırsınız; dışa aktarıcı da serileştirme ve yeniden deneme mantığını otomatik olarak yönetir.

Span Nedir?

Bir Span, bir iz içindeki tek bir iş birimini temsil eder: bir bileşenin bağlanması, bir API çağrısı veya bir kullanıcı etkileşimi. Span'lerin bir adı, başlangıç zamanı, bitiş zamanı, durumu (OK veya ERROR) ve bir dizi anahtar-değer özniteliği vardır. İlişkili Span'ler ortak bir iz ID'si ve üst-alt ilişkileri aracılığıyla birbirine bağlanır.

Span'leri Elle Başlatma ve Sonlandırma

provider.getTracer('react-app') ile bir izleyici oluşturur ve tracer.startSpan('component-mount') ile Span'ler başlatırsınız. İş tamamlandıktan sonra bitiş zamanını kaydetmek için span.end() çağrısını yapın. Span'leri her zaman sonlandırın — sızan Span'ler belleği boşa tüketir ve gözlemlenebilirlik arka ucunuzda eksik veriler oluşturur.

Span'lere Öznitelik Ekleme

Öznitelikler, Span'leri bağlamsal verilerle zenginleştirir: span.setAttribute('user.id', userId) veya span.setAttribute('route', location.pathname). Öznitelikler gözlemlenebilirlik arka ucunuzda aranabilir; bu da "42 numaralı kullanıcı için yavaş olan tüm Span'leri göster" veya " /checkout rotasındaki tüm hataları göster" gibi sorgular yapmanızı sağlar.

Otomatik Fetch Araçlandırması

@opentelemetry/instrumentation-fetch, giden her HTTP isteği için otomatik olarak Span oluşturmak üzere genel fetch işlevini değiştirir. Span, mevcut fetch çağrılarınızda hiçbir değişiklik yapmadan URL'yi, yöntemi, HTTP durum kodunu ve süreyi yakalar.

W3C TraceContext ile Bağlam Aktarımı

fetch enstrümantasyonu giden bir istek için bir iz aralığı oluşturduğunda, W3C TraceContext traceparent üst bilgisini isteğe ekler. Alıcı arka uç bu üst bilgiyi okur ve aynı izi sürdürerek tarayıcıyı ve sunucuyu kapsayan bağlantılı bir iz oluşturur.

React Uygulamanızda OpenTelemetry'yi Başlatma

OpenTelemetry başlatması herhangi bir bileşen bağlanmadan önce gerçekleşmelidir — genellikle uygulamanın giriş dosyasında (main.tsx), ReactDOM.createRoot çağrısından önce. Sağlayıcıyı oluşturun, işlemcileri ve dışa aktarıcıları kaydedin ve bunu genel TracerProvider yapmak için provider.register() çağrısını yapın.

Örnekleme: İz Hacmini Denetleme

Yüksek trafikli uygulamalarda her kullanıcı etkileşimini kaydetmek çok büyük miktarda iz verisi oluşturur. Hacmi azaltmak için TracerProvider içinde bir TraceIdRatioBased örnekleyici yapılandırın (örneğin izlerin %10'unu örnekleyin). Hiçbir hatanın gözden kaçmamasını sağlamak için ParentBased örnekleyici kullanarak hata içeren izlerin her zaman %100'ünü örnekleyin.

OpenTelemetry BatchSpanProcessor'ın Amacı

Tarayıcı uygulamalarında SimpleSpanProcessor yerine BatchSpanProcessor neden kullanılır?

Ders Özeti

OpenTelemetry JavaScript SDK, tarayıcıları TracerProvider, BatchSpanProcessor ve OTLPTraceExporter ile enstrümante eder. İz aralıkları, özniteliklerle zenginleştirilmiş iş birimlerini temsil eder. fetch enstrümantasyonu API çağrıları için otomatik olarak iz aralıkları oluşturur ve uçtan uca dağıtık izleme için W3C TraceContext üst bilgilerini ekler. Temiz iz verilerini korumak için erken başlatın, uygun örnekleme yapın ve iz aralıklarını her zaman sonlandırın.

Sıkça Sorulan Sorular

“Tarayıcıdan OpenTelemetry İzleri” dersi ücretsiz mi?

Evet — “Tarayıcıdan OpenTelemetry İzleri” 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 React Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. React Academy kursu toplamda 4 dersten oluşur.

“Tarayıcıdan OpenTelemetry İzleri” dersinde ne öğreneceğim?

React'te OTel JavaScript SDK'sını kurun, kullanıcı etkileşimleri için aralıklar oluşturun ve bunları bir arka uç toplayıcısına aktarın. React 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.

React Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te React 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 2. dersidir.

“Tarayıcıdan OpenTelemetry İzleri” 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 React Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her React 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.

Bu kursun tüm dersleri

  1. Ön Uç Gözlemlenebilirliği: Ne ve Neden
  2. Tarayıcıdan OpenTelemetry İzleri
  3. Gerçek Kullanıcı İzleme ve Web Vitals
  4. Ön Uç ve Arka Uç İzlerini İlişkilendirme
← React Academy Sayfasına Dön