Jaeger ile Response Body İzleme: OpenTelemetry ve .NET Entegrasyonu

Sıla Sarı - Jul 22 - - Dev Community

Giriş

Bu dokümantasyonda, .NET uygulamanızda OpenTelemetry kullanarak Jaeger üzerinde response body'nin nasıl görselleştirileceğini maddeler halinde açıklayacağım. Amacımız, iki güçlü gözlemleme aracını kullanarak uygulamanızdaki işlemleri izlemek ve detaylı bir şekilde analiz etmek.

Adımlar

1) Gerekli paketleri yükleyin

İlk olarak, OpenTelemetry ve Newtonsoft.Json paketlerini projenize ekleyin:



dotnet add package OpenTelemetry
dotnet add package Newtonsoft.Json


Enter fullscreen mode Exit fullscreen mode

2) Controller sınıflarınıza kütüphaneleri ekleyin

İzleme yapmak istediğiniz controller sınıflarınıza aşağıdaki kütüphaneleri ekleyin. Bu, OpenTelemetry ve JSON işlemleri için gerekli olacaktır.



using OpenTelemetry;
using OpenTelemetry.Trace;
using Newtonsoft.Json;


Enter fullscreen mode Exit fullscreen mode

3) İzleme yapmak istediğiniz methodlara span ekleyin

İzleme yapmak istediğiniz metotların içine girerek span tanımlaması yapın. Span, izlenmekte olan bir işlemi temsil eder ve bu işlemin ayrıntılarını kaydeder.



var currentSpan = Tracer.CurrentSpan;


Enter fullscreen mode Exit fullscreen mode

Bu satır, şu anda yürütülen span'i alır ve izleme yapmaya hazır hale getirir.

4) Response body'nin Kaydedilmesi



var responseBody = new {
//izlemek istediğiniz özellikleri buraya ekleyin
        AccountId = account.AccountId, 
        NewBalance = account.Balance
};


Enter fullscreen mode Exit fullscreen mode

5) Response body'yi JSON stringe dönüştürme

Tanımladığınız response body'yi JSON formatına dönüştürün. Bu, response body'yi Jaeger üzerinde daha kolay görselleştirmenizi sağlar.



var responseBodyJson = JsonConvert.SerializeObject(responseBody);


Enter fullscreen mode Exit fullscreen mode

6) Response body'yi span attribute olarak ekleme

Son olarak, JSON formatındaki response body'yi span attribute olarak ekleyin.



currentSpan.SetAttribute("http.response.body", responseBodyJson);


Enter fullscreen mode Exit fullscreen mode

Bu adım, response body'nin izleme verilerine eklenmesini sağlar ve Jaeger üzerinde kolayca görselleştirilebilir hale getirir.

Sonuç

Image description

Bu adımları takip ederek, .NET uygulamanızda OpenTelemetry ve Jaeger kullanarak response body'yi görselleştirebilirsiniz. Böylece, uygulamanızın izlenebilirliğini ve analiz edilebilirliğini artırabilirsiniz.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .