diff --git a/CHANGELOG.md b/CHANGELOG.md index 208de92f24d..9613770515b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -34,6 +34,7 @@ - Deprecate `pmetric.Metric.DataType()` in favor of `pmetric.Metric.Type()`. (#6127) - Deprecate `pmetric.NumberDataPoint.[Set]?[Int|Double]Val()` in favor of `pmetric.NumberDataPoint.[Set]?[Int|Double]Value()`. (#6134) - Deprecate `pmetric.Exemplar.[Set]?[Int|Double]Val()` in favor of `pmetric.Exemplar.[Set]?[Int|Double]Value()`. (#6134) +- Deprecate `p[metric|log|trace]otlp.[Client|Server]` in favor of `p[metric|log|trace]otlp.GRPC[Client|Server]` (#6165) - Deprecate pdata Clone methods in favor of CopyTo for consistency with other pdata structs (#6164) - `pmetric.Metrics.Clone` is deprecated in favor of `pmetric.Metrics.CopyTo` - `ptrace.Traces.Clone` is deprecated in favor of `pmetric.Traces.CopyTo` diff --git a/config/configgrpc/configgrpc_test.go b/config/configgrpc/configgrpc_test.go index 4f0a0180a19..9dc4eb782d9 100644 --- a/config/configgrpc/configgrpc_test.go +++ b/config/configgrpc/configgrpc_test.go @@ -782,13 +782,13 @@ func (ms *mockedStream) Context() context.Context { func TestClientInfoInterceptors(t *testing.T) { testCases := []struct { desc string - tester func(context.Context, ptraceotlp.Client) + tester func(context.Context, ptraceotlp.GRPCClient) }{ { // we only have unary services, we don't have any clients we could use // to test with streaming services desc: "unary", - tester: func(ctx context.Context, cl ptraceotlp.Client) { + tester: func(ctx context.Context, cl ptraceotlp.GRPCClient) { resp, errResp := cl.Export(ctx, ptraceotlp.NewRequest()) require.NoError(t, errResp) require.NotNil(t, resp) diff --git a/exporter/otlpexporter/otlp.go b/exporter/otlpexporter/otlp.go index 3533de0f3ee..38529a43235 100644 --- a/exporter/otlpexporter/otlp.go +++ b/exporter/otlpexporter/otlp.go @@ -44,9 +44,9 @@ type exporter struct { config *Config // gRPC clients and connection. - traceExporter ptraceotlp.Client - metricExporter pmetricotlp.Client - logExporter plogotlp.Client + traceExporter ptraceotlp.GRPCClient + metricExporter pmetricotlp.GRPCClient + logExporter plogotlp.GRPCClient clientConn *grpc.ClientConn metadata metadata.MD callOptions []grpc.CallOption diff --git a/pdata/plog/plogotlp/logs.go b/pdata/plog/plogotlp/logs.go index e76ac8bc35e..36bd9579d92 100644 --- a/pdata/plog/plogotlp/logs.go +++ b/pdata/plog/plogotlp/logs.go @@ -115,10 +115,10 @@ func (lr Request) Logs() plog.Logs { return plog.Logs(internal.NewLogs(lr.orig)) } -// Client is the client API for OTLP-GRPC Logs service. +// GRPCClient is the client API for OTLP-GRPC Logs service. // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type Client interface { +type GRPCClient interface { // Export plog.Logs to the server. // // For performance reasons, it is recommended to keep this RPC @@ -126,12 +126,15 @@ type Client interface { Export(ctx context.Context, request Request, opts ...grpc.CallOption) (Response, error) } +// Deprecated: [0.61.0] Use GRPCClient instead +type Client = GRPCClient + type logsClient struct { rawClient otlpcollectorlog.LogsServiceClient } // NewClient returns a new Client connected using the given connection. -func NewClient(cc *grpc.ClientConn) Client { +func NewClient(cc *grpc.ClientConn) GRPCClient { return &logsClient{rawClient: otlpcollectorlog.NewLogsServiceClient(cc)} } @@ -140,8 +143,8 @@ func (c *logsClient) Export(ctx context.Context, request Request, opts ...grpc.C return Response{orig: rsp}, err } -// Server is the server API for OTLP gRPC LogsService service. -type Server interface { +// GRPCServer is the server API for OTLP gRPC LogsService service. +type GRPCServer interface { // Export is called every time a new request is received. // // For performance reasons, it is recommended to keep this RPC @@ -149,13 +152,16 @@ type Server interface { Export(context.Context, Request) (Response, error) } +// Deprecated: [0.61.0] Use GRPCServer instead +type Server = GRPCServer + // RegisterServer registers the Server to the grpc.Server. -func RegisterServer(s *grpc.Server, srv Server) { +func RegisterServer(s *grpc.Server, srv GRPCServer) { otlpcollectorlog.RegisterLogsServiceServer(s, &rawLogsServer{srv: srv}) } type rawLogsServer struct { - srv Server + srv GRPCServer } func (s rawLogsServer) Export(ctx context.Context, request *otlpcollectorlog.ExportLogsServiceRequest) (*otlpcollectorlog.ExportLogsServiceResponse, error) { diff --git a/pdata/pmetric/pmetricotlp/metrics.go b/pdata/pmetric/pmetricotlp/metrics.go index 06af12d13d4..65203cc7aee 100644 --- a/pdata/pmetric/pmetricotlp/metrics.go +++ b/pdata/pmetric/pmetricotlp/metrics.go @@ -111,10 +111,10 @@ func (mr Request) Metrics() pmetric.Metrics { return pmetric.Metrics(internal.NewMetrics(mr.orig)) } -// Client is the client API for OTLP-GRPC Metrics service. +// GRPCClient is the client API for OTLP-GRPC Metrics service. // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type Client interface { +type GRPCClient interface { // Export pmetric.Metrics to the server. // // For performance reasons, it is recommended to keep this RPC @@ -122,12 +122,15 @@ type Client interface { Export(ctx context.Context, request Request, opts ...grpc.CallOption) (Response, error) } +// Deprecated: [0.61.0] Use GRPCClient instead +type Client = GRPCClient + type metricsClient struct { rawClient otlpcollectormetrics.MetricsServiceClient } // NewClient returns a new Client connected using the given connection. -func NewClient(cc *grpc.ClientConn) Client { +func NewClient(cc *grpc.ClientConn) GRPCClient { return &metricsClient{rawClient: otlpcollectormetrics.NewMetricsServiceClient(cc)} } @@ -136,8 +139,8 @@ func (c *metricsClient) Export(ctx context.Context, request Request, opts ...grp return Response{orig: rsp}, err } -// Server is the server API for OTLP gRPC MetricsService service. -type Server interface { +// GRPCServer is the server API for OTLP gRPC MetricsService service. +type GRPCServer interface { // Export is called every time a new request is received. // // For performance reasons, it is recommended to keep this RPC @@ -145,8 +148,11 @@ type Server interface { Export(context.Context, Request) (Response, error) } -// RegisterServer registers the Server to the grpc.Server. -func RegisterServer(s *grpc.Server, srv Server) { +// Deprecated: [0.61.0] Use GRPCServer instead +type Server = GRPCServer + +// RegisterServer registers the GRPCServer to the grpc.Server. +func RegisterServer(s *grpc.Server, srv GRPCServer) { otlpcollectormetrics.RegisterMetricsServiceServer(s, &rawMetricsServer{srv: srv}) } diff --git a/pdata/ptrace/ptraceotlp/traces.go b/pdata/ptrace/ptraceotlp/traces.go index 062b849b1e7..37dd41c00d2 100644 --- a/pdata/ptrace/ptraceotlp/traces.go +++ b/pdata/ptrace/ptraceotlp/traces.go @@ -115,10 +115,10 @@ func (tr Request) Traces() ptrace.Traces { return ptrace.Traces(internal.NewTraces(tr.orig)) } -// Client is the client API for OTLP-GRPC Traces service. +// GRPCClient is the client API for OTLP-GRPC Traces service. // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type Client interface { +type GRPCClient interface { // Export ptrace.Traces to the server. // // For performance reasons, it is recommended to keep this RPC @@ -126,12 +126,15 @@ type Client interface { Export(ctx context.Context, request Request, opts ...grpc.CallOption) (Response, error) } +// Deprecated: [0.61.0] Use GRPCClient instead +type Client = GRPCClient + type tracesClient struct { rawClient otlpcollectortrace.TraceServiceClient } // NewClient returns a new Client connected using the given connection. -func NewClient(cc *grpc.ClientConn) Client { +func NewClient(cc *grpc.ClientConn) GRPCClient { return &tracesClient{rawClient: otlpcollectortrace.NewTraceServiceClient(cc)} } @@ -141,8 +144,8 @@ func (c *tracesClient) Export(ctx context.Context, request Request, opts ...grpc return Response{orig: rsp}, err } -// Server is the server API for OTLP gRPC TracesService service. -type Server interface { +// GRPCServer is the server API for OTLP gRPC TracesService service. +type GRPCServer interface { // Export is called every time a new request is received. // // For performance reasons, it is recommended to keep this RPC @@ -150,13 +153,16 @@ type Server interface { Export(context.Context, Request) (Response, error) } -// RegisterServer registers the Server to the grpc.Server. -func RegisterServer(s *grpc.Server, srv Server) { +// Deprecated: [0.61.0] Use GRPCServer instead +type Server = GRPCServer + +// RegisterServer registers the GRPCServer to the grpc.Server. +func RegisterServer(s *grpc.Server, srv GRPCServer) { otlpcollectortrace.RegisterTraceServiceServer(s, &rawTracesServer{srv: srv}) } type rawTracesServer struct { - srv Server + srv GRPCServer } func (s rawTracesServer) Export(ctx context.Context, request *otlpcollectortrace.ExportTraceServiceRequest) (*otlpcollectortrace.ExportTraceServiceResponse, error) { diff --git a/receiver/otlpreceiver/internal/logs/otlp_test.go b/receiver/otlpreceiver/internal/logs/otlp_test.go index de1ac759df4..4c219dce29c 100644 --- a/receiver/otlpreceiver/internal/logs/otlp_test.go +++ b/receiver/otlpreceiver/internal/logs/otlp_test.go @@ -70,7 +70,7 @@ func TestExport_ErrorConsumer(t *testing.T) { assert.Equal(t, plogotlp.Response{}, resp) } -func makeLogsServiceClient(t *testing.T, lc consumer.Logs) plogotlp.Client { +func makeLogsServiceClient(t *testing.T, lc consumer.Logs) plogotlp.GRPCClient { addr := otlpReceiverOnGRPCServer(t, lc) cc, err := grpc.Dial(addr.String(), grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithBlock()) require.NoError(t, err, "Failed to create the TraceServiceClient: %v", err) diff --git a/receiver/otlpreceiver/internal/metrics/otlp_test.go b/receiver/otlpreceiver/internal/metrics/otlp_test.go index 2d9d6c27e70..bca9909ca1e 100644 --- a/receiver/otlpreceiver/internal/metrics/otlp_test.go +++ b/receiver/otlpreceiver/internal/metrics/otlp_test.go @@ -70,7 +70,7 @@ func TestExport_ErrorConsumer(t *testing.T) { assert.Equal(t, pmetricotlp.Response{}, resp) } -func makeMetricsServiceClient(t *testing.T, mc consumer.Metrics) pmetricotlp.Client { +func makeMetricsServiceClient(t *testing.T, mc consumer.Metrics) pmetricotlp.GRPCClient { addr := otlpReceiverOnGRPCServer(t, mc) cc, err := grpc.Dial(addr.String(), grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithBlock()) diff --git a/receiver/otlpreceiver/internal/trace/otlp_test.go b/receiver/otlpreceiver/internal/trace/otlp_test.go index 228e728e12f..09d6bec9bc7 100644 --- a/receiver/otlpreceiver/internal/trace/otlp_test.go +++ b/receiver/otlpreceiver/internal/trace/otlp_test.go @@ -68,7 +68,7 @@ func TestExport_ErrorConsumer(t *testing.T) { assert.Equal(t, ptraceotlp.Response{}, resp) } -func makeTraceServiceClient(t *testing.T, tc consumer.Traces) ptraceotlp.Client { +func makeTraceServiceClient(t *testing.T, tc consumer.Traces) ptraceotlp.GRPCClient { addr := otlpReceiverOnGRPCServer(t, tc) cc, err := grpc.Dial(addr.String(), grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithBlock()) require.NoError(t, err, "Failed to create the TraceServiceClient: %v", err)