Skip to content

Commit

Permalink
NH-93561: add sw span
Browse files Browse the repository at this point in the history
  • Loading branch information
cleverchuk committed Oct 16, 2024
1 parent 5c6c9a0 commit 2539675
Showing 1 changed file with 17 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,12 @@

import com.solarwinds.joboe.config.ConfigManager;
import com.solarwinds.joboe.config.ConfigProperty;
import io.opentelemetry.api.GlobalOpenTelemetry;
import io.opentelemetry.api.trace.Span;
import io.opentelemetry.api.trace.SpanBuilder;
import io.opentelemetry.api.trace.SpanKind;
import io.opentelemetry.api.trace.Tracer;
import io.opentelemetry.context.Scope;
import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation;
import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer;
import net.bytebuddy.asm.Advice;
Expand Down Expand Up @@ -85,8 +91,17 @@ public static class PrepareAdvice {

@Advice.OnMethodEnter(suppress = Throwable.class)
public static void injectComment(@Advice.Argument(value = 0, readOnly = false) String sql) {
sql = TraceContextInjector.inject(currentContext(), sql);
StatementTracer.writeStackTraceSpec(currentContext());
Tracer tracer = GlobalOpenTelemetry.getTracer("com.solarwinds.jdbc", "1.0");
SpanBuilder spanBuilder =
tracer.spanBuilder("sw.jdbc.context").setSpanKind(SpanKind.INTERNAL);

Span span = spanBuilder.startSpan();
try (Scope scope = span.makeCurrent()) {
sql = TraceContextInjector.inject(currentContext(), sql);
StatementTracer.writeStackTraceSpec(currentContext());
} finally {
span.end();
}
}
}
}

0 comments on commit 2539675

Please sign in to comment.