admin管理员组

文章数量:1431904

We are using opentelemetry java agent in our monolith application (non-spring) and would like to customize span with onStart method of Span Processor.

Agent version: 2.7.0

Dependencies used are

            <dependency>
                <groupId>io.opentelemetry</groupId>
                <artifactId>opentelemetry-sdk</artifactId>
                <version>1.43.0</version>
            </dependency>
            <dependency>
                <groupId>io.opentelemetry</groupId>
                <artifactId>opentelemetry-sdk-trace</artifactId>
                <version>1.43.0</version>
            </dependency>
import io.opentelemetry.apimon.AttributeKey;
import io.opentelemetry.context.Context;
import io.opentelemetry.sdk.trace.ReadWriteSpan;
import io.opentelemetry.sdk.trace.ReadableSpan;
import io.opentelemetry.sdk.trace.SpanProcessor;

public class CustomSpanProcessor implements SpanProcessor {
    @Override
    public void onStart(Context parentContext, ReadWriteSpan span) {
        // some logic
    }

While starting server we add our span registering logic

CustomSpanProcessor customSpanProcessor = new CustomSpanProcessor();
SdkTracerProvider tracerProvider = SdkTracerProvider.builder()
                .addSpanProcessor(customSpanProcessor)
                .build();
OpenTelemetrySdk.builder().setTracerProvider(tracerProvider).buildAndRegisterGlobal();

But still onStart method is not getting invoked. Please suggest

本文标签: