The goal of Arconia OpenTelemetry is to provide a single dependency you can add to your Spring Boot application to get unified Java observability with minimal configuration and maximum compatibility with both OpenTelemetry and Micrometer ecosystems.

#Java #SpringBoot #OpenTelemetry #Arconia #Micrometer

https://www.thomasvitale.com/spring-boot-observability-arconia-opentelemetry/

Spring Boot Observability with Arconia OpenTelemetry

Arconia OpenTelemetry enhances observability for Spring Boot by combining the standardization of OpenTelemetry with the robustness of Micrometer.

Thomas Vitale

@thomasvitale Great project! The OpenTelemetry story of Spring Boot isn’t quite there yet out of the box, so Arconia OpenTelemetry will hopefully help with that. 👏

But did you use some LLM to write that blog post? It’s super repetitive and doesn’t quite get to the point. I found it very cumbersome to read.

@joschi Regarding “isn’t quite there out of the box”, if you have the time, please tell me more. What’s missing/not quite right from your perspective?

@ankinson What I'm missing for example is being able to emit OpenTelemetry-compliant logs (with regards to trace ID, parent span ID, and span ID) on stdout (console) instead of sending them directly to an OTLP endpoint.

Use case: Running applications in a container would "lose" important log messages, such as failure to start up or parse the configuration, when the OTLP sender isn't set up yet.

It's also not quite clear to me when to use the Micrometer Observation API and when to use the OpenTelemetry SDK-specific instruments from the Spring Boot documentation alone and if they actually interfere with each other.

@ankinson The "Arconia OpenTelemetry vs. Alternatives" section and the table in @thomasvitale's blog post also describes my experience with OpenTelemetry-based observability in Spring Boot (3.x so far).
@joschi thanks for your feedback! I wrote the blog post myself. I found challenging to explain the problem, to be honest. And that shows. I’ve been sitting on it for a few days, but I didn’t want to delay the publication fourther. Maybe I should have 😅 I’ll give it a second try to improve it, thank you!