Skip to content

Commit fad2fb1

Browse files
committed
fix(otel): align service resource schema
Signed-off-by: pandego <7780875+pandego@users.noreply.github.com>
1 parent e20da46 commit fad2fb1

2 files changed

Lines changed: 24 additions & 9 deletions

File tree

cmd/root/otel.go

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,14 @@ import (
1212
"go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp"
1313
"go.opentelemetry.io/otel/sdk/resource"
1414
"go.opentelemetry.io/otel/sdk/trace"
15-
semconv "go.opentelemetry.io/otel/semconv/v1.37.0"
15+
semconv "go.opentelemetry.io/otel/semconv/v1.40.0"
1616
)
1717

1818
const AppName = "cagent"
1919

2020
// initOTelSDK initializes OpenTelemetry SDK with OTLP exporter
2121
func initOTelSDK(ctx context.Context) (err error) {
22-
res, err := resource.Merge(
23-
resource.Default(),
24-
resource.NewWithAttributes(
25-
semconv.SchemaURL,
26-
semconv.ServiceName(AppName),
27-
semconv.ServiceVersion("dev"), // TODO: use actual version
28-
),
29-
)
22+
res, err := newOTelResource()
3023
if err != nil {
3124
return fmt.Errorf("failed to create resource: %w", err)
3225
}
@@ -77,6 +70,17 @@ func initOTelSDK(ctx context.Context) (err error) {
7770

7871
// isLocalhostEndpoint reports whether the given endpoint refers to a
7972
// loopback address so that we can safely skip TLS.
73+
func newOTelResource() (*resource.Resource, error) {
74+
return resource.Merge(
75+
resource.Default(),
76+
resource.NewWithAttributes(
77+
semconv.SchemaURL,
78+
semconv.ServiceName(AppName),
79+
semconv.ServiceVersion("dev"), // TODO: use actual version
80+
),
81+
)
82+
}
83+
8084
func isLocalhostEndpoint(endpoint string) bool {
8185
host := endpoint
8286
// Strip port if present.

cmd/root/otel_test.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,20 @@ package root
33
import (
44
"testing"
55

6+
semconv "go.opentelemetry.io/otel/semconv/v1.40.0"
7+
68
"github.com/stretchr/testify/assert"
9+
"github.com/stretchr/testify/require"
710
)
811

12+
func TestNewOTelResourceUsesCurrentSchemaURL(t *testing.T) {
13+
t.Parallel()
14+
15+
res, err := newOTelResource()
16+
require.NoError(t, err)
17+
assert.Equal(t, semconv.SchemaURL, res.SchemaURL())
18+
}
19+
920
func TestIsLocalhostEndpoint(t *testing.T) {
1021
t.Parallel()
1122

0 commit comments

Comments
 (0)