diff --git a/service/internal/proctelemetry/config.go b/service/internal/proctelemetry/config.go index 965b4e4f29c..67d3122f980 100644 --- a/service/internal/proctelemetry/config.go +++ b/service/internal/proctelemetry/config.go @@ -280,7 +280,14 @@ func initOTLPgRPCExporter(ctx context.Context, otlpConfig *telemetry.OtlpMetric) } if otlpConfig.Compression != nil { - opts = append(opts, otlpmetricgrpc.WithCompressor(*otlpConfig.Compression)) + switch *otlpConfig.Compression { + case "gzip": + opts = append(opts, otlpmetricgrpc.WithCompressor(*otlpConfig.Compression)) + case "none": + break + default: + return nil, fmt.Errorf("unsupported compression %q", *otlpConfig.Compression) + } } if otlpConfig.Timeout != nil { opts = append(opts, otlpmetricgrpc.WithTimeout(time.Millisecond*time.Duration(*otlpConfig.Timeout))) @@ -344,7 +351,14 @@ func initOTLPgRPCSpanExporter(ctx context.Context, otlpConfig *telemetry.Otlp) ( } if otlpConfig.Compression != nil { - opts = append(opts, otlptracegrpc.WithCompressor(*otlpConfig.Compression)) + switch *otlpConfig.Compression { + case "gzip": + opts = append(opts, otlptracegrpc.WithCompressor(*otlpConfig.Compression)) + case "none": + break + default: + return nil, fmt.Errorf("unsupported compression %q", *otlpConfig.Compression) + } } if otlpConfig.Timeout != nil && *otlpConfig.Timeout > 0 { opts = append(opts, otlptracegrpc.WithTimeout(time.Millisecond*time.Duration(*otlpConfig.Timeout))) diff --git a/service/internal/proctelemetry/config_test.go b/service/internal/proctelemetry/config_test.go index 071bb15d985..cb09754e52c 100644 --- a/service/internal/proctelemetry/config_test.go +++ b/service/internal/proctelemetry/config_test.go @@ -162,7 +162,7 @@ func TestMetricReader(t *testing.T) { Otlp: &telemetry.OtlpMetric{ Protocol: "grpc/protobuf", Endpoint: "http://localhost:4317", - Compression: strPtr("gzip"), + Compression: strPtr("none"), Timeout: intPtr(1000), Headers: map[string]string{ "test": "test1", @@ -226,6 +226,7 @@ func TestMetricReader(t *testing.T) { }, }, }, + err: errors.New("unsupported compression \"invalid\""), }, { name: "periodic/otlp-http-exporter", @@ -442,7 +443,7 @@ func TestSpanProcessor(t *testing.T) { }, }, }, - err: errors.New("unsupported protocol http/invalid"), + err: errors.New("unsupported protocol \"http/invalid\""), }, { name: "batch/otlp-grpc-exporter-no-endpoint", @@ -553,6 +554,7 @@ func TestSpanProcessor(t *testing.T) { }, }, }, + err: errors.New("unsupported compression \"invalid\""), }, { name: "batch/otlp-http-exporter",