@@ -12,6 +12,7 @@ class TraceService(trace_service_pb2_grpc.TraceServiceServicer):
1212
1313 def Export (self , request , context ):
1414 self .batches .append (request .resource_spans )
15+ self .last_metadata = context .invocation_metadata ()
1516 return trace_service_pb2 .ExportTracePartialSuccess ()
1617
1718 def get_batch (self ):
@@ -31,13 +32,17 @@ def get_span(self):
3132
3233
3334@pytest .fixture (scope = "module" )
34- def trace_service (pytestconfig , logger ):
35+ def trace_service (request , pytestconfig , logger ):
3536 server = grpc .server (concurrent .futures .ThreadPoolExecutor ())
3637 trace_service = TraceService ()
3738 trace_service_pb2_grpc .add_TraceServiceServicer_to_server (
3839 trace_service , server
3940 )
40- listen_addr = f"127.0.0.1:{ 24317 if pytestconfig .option .otelcol else 14317 } "
41+ trace_service .use_otelcol = (
42+ pytestconfig .option .otelcol
43+ and getattr (request , "param" , "" ) != "skip_otelcol"
44+ )
45+ listen_addr = f"127.0.0.1:{ 24317 if trace_service .use_otelcol else 14317 } "
4146 server .add_insecure_port (listen_addr )
4247 logger .info (f"Starting trace service at { listen_addr } ..." )
4348 server .start ()
@@ -48,7 +53,7 @@ def trace_service(pytestconfig, logger):
4853
4954@pytest .fixture (scope = "module" )
5055def otelcol (pytestconfig , testdir , logger , trace_service ):
51- if pytestconfig . option . otelcol is None :
56+ if not trace_service . use_otelcol :
5257 yield
5358 return
5459
0 commit comments