Skip to content

Commit f0a5551

Browse files
authored
fix conflict schema url when initializing resources (#5140)
Signed-off-by: Ben Ye <[email protected]>
1 parent b596df8 commit f0a5551

File tree

2 files changed

+27
-11
lines changed

2 files changed

+27
-11
lines changed

pkg/tracing/tracing.go

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import (
1919
"go.opentelemetry.io/otel/propagation"
2020
"go.opentelemetry.io/otel/sdk/resource"
2121
sdktrace "go.opentelemetry.io/otel/sdk/trace"
22-
semconv "go.opentelemetry.io/otel/semconv/v1.12.0"
22+
semconv "go.opentelemetry.io/otel/semconv/v1.17.0"
2323

2424
"github.com/cortexproject/cortex/pkg/tracing/migration"
2525
"github.com/cortexproject/cortex/pkg/tracing/sampler"
@@ -119,7 +119,6 @@ func SetupTracing(ctx context.Context, name string, c Config) (func(context.Cont
119119
}
120120

121121
r, err := newResource(ctx, name, c.Otel.ExtraDetectors)
122-
123122
if err != nil {
124123
return nil, fmt.Errorf("creating tracing resource: %w", err)
125124
}
@@ -158,14 +157,10 @@ func newTraceProvider(r *resource.Resource, c Config, exporter *otlptrace.Export
158157
}
159158

160159
func newResource(ctx context.Context, target string, detectors []resource.Detector) (*resource.Resource, error) {
161-
r, err := resource.New(ctx, resource.WithHost(), resource.WithDetectors(detectors...))
162-
163-
if err != nil {
164-
return nil, err
160+
opts := []resource.Option{
161+
resource.WithHost(),
162+
resource.WithDetectors(detectors...),
163+
resource.WithAttributes(semconv.ServiceNameKey.String(target)),
165164
}
166-
167-
return resource.Merge(r, resource.NewWithAttributes(
168-
semconv.SchemaURL,
169-
semconv.ServiceNameKey.String(target),
170-
))
165+
return resource.New(ctx, opts...)
171166
}

pkg/tracing/tracing_test.go

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package tracing
2+
3+
import (
4+
"context"
5+
"testing"
6+
7+
"github.com/stretchr/testify/require"
8+
semconv "go.opentelemetry.io/otel/semconv/v1.17.0"
9+
)
10+
11+
func TestNewResource(t *testing.T) {
12+
ctx := context.Background()
13+
target := "ingester"
14+
r, err := newResource(ctx, target, nil)
15+
require.NoError(t, err)
16+
17+
set := r.Set()
18+
name, ok := set.Value(semconv.ServiceNameKey)
19+
require.True(t, ok)
20+
require.Equal(t, name.AsString(), target)
21+
}

0 commit comments

Comments
 (0)