Giriş
Bu doküman OpenTelemetry .NET otomatik enstrümasyonu kullanarak .NET uygulamalarından ve servislerinden kaynak kodlarını değiştirmeden izleme verilerini görebilmeyi maddelerle açıklamaktadır.
Gereksinimler
En düşük desteklenen .NET Framework sürümü 4.6.2'dir.
Adımlar
1. Bash script'i indirin
Bu script, otomatik kurulumu sağlayacak olan temel dosyaları içerir.
curl -sSfL https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/latest/download/otel-dotnet-auto-install.sh -O
2. Çekirdek dosyaları yükleyin
İndirdiğimiz bash script'ini kullanarak, OpenTelemetry .NET için gerekli olan dosyaları yüklüyoruz. Bu adım, enstrümantasyonun çalışması için gerekli olan alt yapıyı hazırlar.
sh ./otel-dotnet-auto-install.sh
3.Enstrümantasyonun betiğinin çalıştırılabilir yapılmasını sağlayın
Bu adım betiğin başarıyla tamamlanabilmesi için gereklidir.
. $HOME/.otel-dotnet-auto/instrument.sh
4. Geçerli kabuk oturumu için enstrümantasyonu ayarlama
Bu komut uygulamayı etkinleştirilmiş OpenTelemetry izleme işlemleriyle çalıştırmak için kullanılır.
OTEL_EXPORTER_OTLP_ENDPOINT=your-endpoint OTEL_SERVICE_NAME=your-app OTEL_RESOURCE_ATTRIBUTES=deployment.environment=staging,service.version=1.0.0 ./your-app
Projeniz .NET 8 ile derlendiğinde, çalıştırılabilir uygulamanız genellikle proje dizininizdeki bin/debug veya bin/Release klasörlerinde bulunur. Terminal veya Komut istemi üzerinden proje dizinine giderek bin/debug klasörüne erişin. Burada, .NET 8 tarafından derlenen ve çalıştırılabilir hale getirilen uygulamanızın adını (your-app) ve konumunu bulabilirsiniz.
OTEL_EXPORTER_OTLP_ENDPOINT ayarı, izleme verilerinin gönderileceği OpenTelemetry collector veya başka bir izleme backend'ini belirtir;
OTEL_SERVICE_NAME, izleme verilerinde kullanılacak servis adını tanımlar;
OTEL_RESOURCE_ATTRIBUTES ise uygulamanızın dağıtım ortamı (örneğin, staging) ve sürümü (1.0.0) gibi ek bilgiler sağlar.
Komut satırı seçenekleri veya ortam değişkenleri aracılığıyla uygulamanızı başlatırken ek parametreler (örneğin OTEL_LOG_LEVEL=debug) veya çevresel değişkenler kullanabilirsiniz.
Not:İzlemek istediğiniz servisin ismini görmenize rağmen verileri göremiyorsanız uygulamanızın saatini kontrol etmeniz faydalı olacaktır.