@@ -26,7 +26,6 @@ import (
2626 "go.opentelemetry.io/otel/baggage"
2727 "go.opentelemetry.io/otel/codes"
2828 "go.opentelemetry.io/otel/propagation"
29- "go.opentelemetry.io/otel/sdk"
3029 semconv "go.opentelemetry.io/otel/semconv/v1.21.0"
3130 "go.opentelemetry.io/otel/trace"
3231)
@@ -55,6 +54,11 @@ func init() {
5554 })
5655}
5756
57+ var _ filter.Filter = (* otelServerFilter )(nil )
58+
59+ // otelServerFilter implements server-side tracing for Dubbo requests
60+ // by creating and managing trace spans using the configured propagator
61+ // and tracer provider.
5862type otelServerFilter struct {
5963 Propagators propagation.TextMapPropagator
6064 TracerProvider trace.TracerProvider
@@ -70,8 +74,8 @@ func (f *otelServerFilter) Invoke(ctx context.Context, invoker base.Invoker, inv
7074 ctx = baggage .ContextWithBaggage (ctx , bags )
7175
7276 tracer := f .TracerProvider .Tracer (
73- constant .OtelPackageName ,
74- trace .WithInstrumentationVersion (sdk .Version () ),
77+ constant .TraceScopeName ,
78+ trace .WithInstrumentationVersion (constant .Version ),
7579 )
7680
7781 ctx , span := tracer .Start (
@@ -86,16 +90,21 @@ func (f *otelServerFilter) Invoke(ctx context.Context, invoker base.Invoker, inv
8690 )
8791 defer span .End ()
8892
89- result := invoker .Invoke (ctx , invocation )
93+ res := invoker .Invoke (ctx , invocation )
9094
91- if result .Error () != nil {
92- span .SetStatus (codes .Error , result .Error ().Error ())
95+ if res .Error () != nil {
96+ span .SetStatus (codes .Error , res .Error ().Error ())
9397 } else {
9498 span .SetStatus (codes .Ok , codes .Ok .String ())
9599 }
96- return result
100+ return res
97101}
98102
103+ var _ filter.Filter = (* otelClientFilter )(nil )
104+
105+ // otelClientFilter implements client-side tracing for Dubbo requests
106+ // by creating and managing trace spans using the configured propagator
107+ // and tracer provider.
99108type otelClientFilter struct {
100109 Propagators propagation.TextMapPropagator
101110 TracerProvider trace.TracerProvider
@@ -107,8 +116,8 @@ func (f *otelClientFilter) OnResponse(ctx context.Context, result result.Result,
107116
108117func (f * otelClientFilter ) Invoke (ctx context.Context , invoker base.Invoker , invocation base.Invocation ) result.Result {
109118 tracer := f .TracerProvider .Tracer (
110- constant .OtelPackageName ,
111- trace .WithInstrumentationVersion (sdk .Version () ),
119+ constant .TraceScopeName ,
120+ trace .WithInstrumentationVersion (constant .Version ),
112121 )
113122
114123 var span trace.Span
@@ -132,12 +141,12 @@ func (f *otelClientFilter) Invoke(ctx context.Context, invoker base.Invoker, inv
132141 for k , v := range attachments {
133142 invocation .SetAttachment (k , v )
134143 }
135- result := invoker .Invoke (ctx , invocation )
144+ res := invoker .Invoke (ctx , invocation )
136145
137- if result .Error () != nil {
138- span .SetStatus (codes .Error , result .Error ().Error ())
146+ if res .Error () != nil {
147+ span .SetStatus (codes .Error , res .Error ().Error ())
139148 } else {
140149 span .SetStatus (codes .Ok , codes .Ok .String ())
141150 }
142- return result
151+ return res
143152}
0 commit comments