@@ -16,12 +16,7 @@ import (
1616
1717 "github.com/gorilla/handlers"
1818 "github.com/soheilhy/cmux"
19- "go.opentelemetry.io/collector/component"
2019 "go.opentelemetry.io/collector/component/componentstatus"
21- "go.opentelemetry.io/collector/config/configgrpc"
22- "go.opentelemetry.io/collector/config/configtelemetry"
23- "go.opentelemetry.io/otel/metric"
24- "go.opentelemetry.io/otel/metric/noop"
2520 "go.uber.org/zap"
2621 "go.uber.org/zap/zapcore"
2722 "google.golang.org/grpc"
@@ -59,9 +54,7 @@ type Server struct {
5954}
6055
6156// NewServer creates and initializes Server
62- func NewServer (
63- ctx context.Context ,
64- querySvc * querysvc.QueryService ,
57+ func NewServer (querySvc * querysvc.QueryService ,
6558 metricsQuerySvc querysvc.MetricsQueryService ,
6659 options * QueryOptions ,
6760 tm * tenancy.Manager ,
@@ -81,18 +74,12 @@ func NewServer(
8174 return nil , errors .New ("server with TLS enabled can not use same host ports for gRPC and HTTP. Use dedicated HTTP and gRPC host ports instead" )
8275 }
8376
84- var grpcServer * grpc.Server
85- if separatePorts {
86- grpcServer , err = createGRPCServerLegacy (ctx , options , tm )
87- } else {
88- grpcServer , err = createGRPCServerOTEL (ctx , options , tm , telset )
89- }
77+ grpcServer , err := createGRPCServer (querySvc , metricsQuerySvc , options , tm , telset )
9078 if err != nil {
9179 return nil , err
9280 }
93- registerGRPCHandlers (grpcServer , querySvc , metricsQuerySvc , telset )
9481
95- httpServer , err := createHTTPServer (ctx , querySvc , metricsQuerySvc , options , tm , telset )
82+ httpServer , err := createHTTPServer (querySvc , metricsQuerySvc , options , tm , telset )
9683 if err != nil {
9784 return nil , err
9885 }
@@ -107,15 +94,11 @@ func NewServer(
10794 }, nil
10895}
10996
110- func createGRPCServerLegacy (
111- ctx context.Context ,
112- options * QueryOptions ,
113- tm * tenancy.Manager ,
114- ) (* grpc.Server , error ) {
97+ func createGRPCServer (querySvc * querysvc.QueryService , metricsQuerySvc querysvc.MetricsQueryService , options * QueryOptions , tm * tenancy.Manager , telset telemetery.Setting ) (* grpc.Server , error ) {
11598 var grpcOpts []grpc.ServerOption
11699
117100 if options .GRPC .TLSSetting != nil {
118- tlsCfg , err := options .GRPC .TLSSetting .LoadTLSConfig (ctx )
101+ tlsCfg , err := options .GRPC .TLSSetting .LoadTLSConfig (context . Background () )
119102 if err != nil {
120103 return nil , err
121104 }
@@ -125,24 +108,15 @@ func createGRPCServerLegacy(
125108 grpcOpts = append (grpcOpts , grpc .Creds (creds ))
126109 }
127110 if tm .Enabled {
128- //nolint:contextcheck
129111 grpcOpts = append (grpcOpts ,
130112 grpc .StreamInterceptor (tenancy .NewGuardingStreamInterceptor (tm )),
131113 grpc .UnaryInterceptor (tenancy .NewGuardingUnaryInterceptor (tm )),
132114 )
133115 }
134116
135117 server := grpc .NewServer (grpcOpts ... )
136- return server , nil
137- }
138-
139- func registerGRPCHandlers (
140- server * grpc.Server ,
141- querySvc * querysvc.QueryService ,
142- metricsQuerySvc querysvc.MetricsQueryService ,
143- telset telemetery.Setting ,
144- ) {
145118 reflection .Register (server )
119+
146120 handler := NewGRPCHandler (querySvc , metricsQuerySvc , GRPCHandlerOptions {
147121 Logger : telset .Logger ,
148122 })
@@ -157,33 +131,7 @@ func registerGRPCHandlers(
157131 healthServer .SetServingStatus ("jaeger.api_v3.QueryService" , grpc_health_v1 .HealthCheckResponse_SERVING )
158132
159133 grpc_health_v1 .RegisterHealthServer (server , healthServer )
160- }
161-
162- func createGRPCServerOTEL (
163- ctx context.Context ,
164- options * QueryOptions ,
165- tm * tenancy.Manager ,
166- telset telemetery.Setting ,
167- ) (* grpc.Server , error ) {
168- var grpcOpts []configgrpc.ToServerOption
169- if tm .Enabled {
170- //nolint:contextcheck
171- grpcOpts = append (grpcOpts ,
172- configgrpc .WithGrpcServerOption (grpc .StreamInterceptor (tenancy .NewGuardingStreamInterceptor (tm ))),
173- configgrpc .WithGrpcServerOption (grpc .UnaryInterceptor (tenancy .NewGuardingUnaryInterceptor (tm ))),
174- )
175- }
176- return options .GRPC .ToServer (
177- ctx ,
178- telset .Host ,
179- component.TelemetrySettings {
180- Logger : telset .Logger ,
181- TracerProvider : telset .TracerProvider ,
182- LeveledMeterProvider : func (_ configtelemetry.Level ) metric.MeterProvider {
183- return noop .NewMeterProvider ()
184- },
185- },
186- grpcOpts ... )
134+ return server , nil
187135}
188136
189137type httpServer struct {
@@ -194,7 +142,6 @@ type httpServer struct {
194142var _ io.Closer = (* httpServer )(nil )
195143
196144func createHTTPServer (
197- ctx context.Context ,
198145 querySvc * querysvc.QueryService ,
199146 metricsQuerySvc querysvc.MetricsQueryService ,
200147 queryOpts * QueryOptions ,
@@ -242,7 +189,7 @@ func createHTTPServer(
242189 }
243190
244191 if queryOpts .HTTP .TLSSetting != nil {
245- tlsCfg , err := queryOpts .HTTP .TLSSetting .LoadTLSConfig (ctx ) // This checks if the certificates are correctly provided
192+ tlsCfg , err := queryOpts .HTTP .TLSSetting .LoadTLSConfig (context . Background () ) // This checks if the certificates are correctly provided
246193 if err != nil {
247194 return nil , err
248195 }
@@ -262,10 +209,10 @@ func (hS httpServer) Close() error {
262209}
263210
264211// initListener initialises listeners of the server
265- func (s * Server ) initListener (ctx context. Context ) (cmux.CMux , error ) {
212+ func (s * Server ) initListener () (cmux.CMux , error ) {
266213 if s .separatePorts { // use separate ports and listeners each for gRPC and HTTP requests
267214 var err error
268- s .grpcConn , err = s .queryOptions .GRPC .NetAddr .Listen ( ctx )
215+ s .grpcConn , err = net . Listen ( "tcp" , s .queryOptions .GRPC .NetAddr .Endpoint )
269216 if err != nil {
270217 return nil , err
271218 }
@@ -313,8 +260,8 @@ func (s *Server) initListener(ctx context.Context) (cmux.CMux, error) {
313260}
314261
315262// Start http, GRPC and cmux servers concurrently
316- func (s * Server ) Start (ctx context. Context ) error {
317- cmuxServer , err := s .initListener (ctx )
263+ func (s * Server ) Start () error {
264+ cmuxServer , err := s .initListener ()
318265 if err != nil {
319266 return fmt .Errorf ("query server failed to initialize listener: %w" , err )
320267 }
0 commit comments