Getting started

Compatibility

The OpenTelemetry Spring Boot starter works with Spring Boot 2.6+ and 3.1+, and Spring Boot native image applications. The opentelemetry-java-examples/spring-native repository contains an example of a Spring Boot Native image application instrumented using the OpenTelemetry Spring Boot starter.

Dependency management

A Bill of Material (BOM) ensures that versions of dependencies (including transitive ones) are aligned.

To ensure version alignment across all OpenTelemetry dependencies, you must import the opentelemetry-instrumentation-bom BOM when using the OpenTelemetry starter.

The following example shows how to import the OpenTelemetry BOMs using Maven:

<dependencyManagement>  <dependencies>  <dependency>  <groupId>io.opentelemetry.instrumentation</groupId>  <artifactId>opentelemetry-instrumentation-bom</artifactId>  <version>2.17.0</version>  <type>pom</type>  <scope>import</scope>  </dependency>  </dependencies> </dependencyManagement> 

With Gradle and Spring Boot, you have two ways to import a BOM.

You can use the Gradle’s native BOM support by adding dependencies:

import org.springframework.boot.gradle.plugin.SpringBootPlugin  plugins {  id("java")  id("org.springframework.boot") version "3.2.O" }  dependencies {  implementation(platform(SpringBootPlugin.BOM_COORDINATES))  implementation(platform("io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom:2.17.0")) } 

The other way with Gradle is to use the io.spring.dependency-management plugin and to import the BOMs in dependencyManagement:

plugins {  id("java")  id("org.springframework.boot") version "3.2.O"  id("io.spring.dependency-management") version "1.1.0" }  dependencyManagement {  imports {  mavenBom("io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom:2.17.0")  } } 

OpenTelemetry Starter dependency

Add the dependency given below to enable the OpenTelemetry starter.

The OpenTelemetry starter uses OpenTelemetry Spring Boot autoconfiguration.

<dependency>  <groupId>io.opentelemetry.instrumentation</groupId>  <artifactId>opentelemetry-spring-boot-starter</artifactId> </dependency> 
implementation("io.opentelemetry.instrumentation:opentelemetry-spring-boot-starter") 

Last modified June 11, 2025: Alert cleanup (#7090) (c392c714)