You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot中OpenTelemetry自动工具化自定义配置方法未被调用问题

问题排查与解决方案

1. 确认依赖完整性

确保项目引入了OpenTelemetry Spring Boot Starter的正确依赖,AutoConfigurationCustomizerProvider是该starter提供的SPI接口。

  • Maven依赖示例:
<dependency>
    <groupId>io.opentelemetry.instrumentation</groupId>
    <artifactId>opentelemetry-spring-boot-starter</artifactId>
    <version>匹配你的Otel核心版本号</version>
</dependency>
  • Gradle依赖示例:
implementation 'io.opentelemetry.instrumentation:opentelemetry-spring-boot-starter:匹配你的Otel核心版本号'

注意:版本需与OpenTelemetry核心组件保持一致,避免版本冲突。

2. 确保配置类被Spring扫描

OtelConfig类的@Configuration注解需被Spring组件扫描机制识别:

  • 检查该类是否位于Spring Boot主应用类(带@SpringBootApplication注解)的同包或子包下;若不在,需在主应用类添加@ComponentScan(basePackages = "你的OtelConfig所在包路径")指定扫描范围。

3. 手动注册SPI实现(旧版本需注意)

部分早期版本的OpenTelemetry Spring Boot Starter需要通过SPI机制手动注册实现类:

  • 在src/main/resources/META-INF/services目录下创建文件io.opentelemetry.instrumentation.spring.autoconfigure.spi.AutoConfigurationCustomizerProvider;
  • 文件内写入OtelConfig类的全限定名,例如:com.yourpackage.OtelConfig。

4. 检查OpenTelemetry自动配置状态

确保未禁用OpenTelemetry自动配置:

  • 检查application.properties/application.yml,若存在otel.springboot.enabled=false,改为true或删除该配置;
  • 检查主应用类的@SpringBootApplication注解是否排除了Otel自动配置类(如exclude = {OpenTelemetryAutoConfiguration.class}),若有则移除排除项。

5. 替代方案:直接构建OpenTelemetry实例

若上述方法无效,可绕过自动配置SPI,直接通过@Bean定义配置:

@Configuration
public class OtelConfig {
    @Bean
    public OpenTelemetry openTelemetry() {
        return OpenTelemetrySdk.builder()
                .setTracerProvider(TracerProviderSdk.builder()
                        .setSampler(Samplers.alwaysOn())
                        .addSpanProcessor(SimpleSpanProcessor.create(JaegerGrpcSpanExporter.builder()
                                .setEndpoint("http://localhost:14250")
                                .build()))
                        .build())
                .buildAndRegisterGlobal();
    }
}

内容的提问来源于stack exchange,提问作者Rakesh Goyal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 07:54:53