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
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;
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;
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
};
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);
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);
Bu adım, response body'nin izleme verilerine eklenmesini sağlar ve Jaeger üzerinde kolayca görselleştirilebilir hale getirir.
Sonuç
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.