DEV Community

Abdulkadir Erbas for Açıklab

Posted on

2

Spring Boot Uygulamalarında OpenTelemetry Entegrasyonu

Uygulamalarınızın performansını gözlemlemek ve izlemek modern yazılım geliştirme süreçlerinin vazgeçilmez bir parçası haline geldi. OpenTelemetry, dağıtılmış izleme ve metrik toplama için güçlü bir araçtır. Bu yazıda, bir Java Spring Boot uygulamasına OpenTelemetry entegrasyonunu nasıl yapabileceğinizi göstereceğim.

OpenTelemetry Java Agent dosyasını indirmiş olmanız. Buradan edinebilirsiniz.

https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar


Adım 1: OpenTelemetry Agent Dosyasını Projeye Dahil Etme

Öncelikle, indirdiğiniz opentelemetry-javaagent.jar dosyasını projenizin kök dizinine yerleştirin. Bu dosya, uygulamanızın çalışma zamanında izleme yapabilmesi için gerekli.

Adım 2: Gerekli Ortam Değişkenlerini Ayarlama

Uygulamanızın hangi endpoint'e veri göndereceğini, izleme verilerinin hangi formatta olacağını ve servis adını belirtmek için aşağıdaki ortam değişkenlerini ayarlayın:

$env:OTEL_EXPORTER_OTLP_ENDPOINT="http://<ipadrress>:<port>"
$env:OTEL_TRACES_EXPORTER="otlp"
$env:OTEL_SERVICE_NAME="my-java-service"
Enter fullscreen mode Exit fullscreen mode

Açıklamalar:

  • OTEL_EXPORTER_OTLP_ENDPOINT: Verilerin gönderileceği endpoint.
  • OTEL_TRACES_EXPORTER: İzleme verilerinin OTLP formatında gönderileceğini belirtir.
  • OTEL_SERVICE_NAME: İzleme verilerinde görünecek servis adı.

Adım 3: OpenTelemetry Agent ile Uygulamayı Çalıştırma

Ortam değişkenlerini ayarladıktan sonra, uygulamanızı OpenTelemetry Java Agent ile çalıştırın:

java -javaagent:./opentelemetry-javaagent.jar -jar ./target/spring-boot-jpa-h2-0.0.1-SNAPSHOT.jar
Enter fullscreen mode Exit fullscreen mode

Burada:
-javaagent: Java Agent dosyasını belirtir.
-jar: Uygulamanızın JAR dosyasını çalıştırır.

Adım 4: OpenTelemetry Collector ile İzleme Verilerini Görüntüleme

Collector kuruluysa veya endpoint'e bağlanabiliyorsanız, gönderilen izleme verilerini görüntülemek için Collector'un arayüzünü kullanabilirsiniz. Örneğin, Grafana veya Jaeger ile bu verileri analiz edebilirsiniz.


Bu yazıda, bir Java Spring Boot uygulamasında OpenTelemetry entegrasyonunun nasıl yapılacağını gösterdim. İzleme ve gözlemlenebilirlik araçları, yazılım kalitesini artırmanın ve kullanıcı deneyimini geliştirmenin en etkili yollarından biridir. Siz de OpenTelemetry'yi projelerinize dahil ederek uygulamalarınızı daha iyi gözlemleyebilirsiniz.

Kaynak: https://opentelemetry.io/docs/zero-code/java/agent/getting-started/

Image of Timescale

Timescale – the developer's data platform for modern apps, built on PostgreSQL

Timescale Cloud is PostgreSQL optimized for speed, scale, and performance. Over 3 million IoT, AI, crypto, and dev tool apps are powered by Timescale. Try it free today! No credit card required.

Try free

Top comments (0)

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay