3333 OTEL_BSP_MAX_QUEUE_SIZE ,
3434 OTEL_BSP_SCHEDULE_DELAY ,
3535)
36+ from opentelemetry .sdk .resources import Resource
3637from opentelemetry .sdk .trace import export
3738from opentelemetry .sdk .trace .export import logger
3839from opentelemetry .sdk .trace .export .in_memory_span_exporter import (
@@ -151,7 +152,7 @@ def test_simple_span_processor_not_sampled(self):
151152 self .assertListEqual ([], spans_names_list )
152153
153154
154- def _create_start_and_end_span (name , span_processor ):
155+ def _create_start_and_end_span (name , span_processor , resource ):
155156 span = trace ._Span (
156157 name ,
157158 trace_api .SpanContext (
@@ -161,6 +162,7 @@ def _create_start_and_end_span(name, span_processor):
161162 trace_flags = trace_api .TraceFlags (trace_api .TraceFlags .SAMPLED ),
162163 ),
163164 span_processor = span_processor ,
165+ resource = resource ,
164166 )
165167 span .start ()
166168 span .end ()
@@ -245,8 +247,9 @@ def test_shutdown(self):
245247
246248 span_names = ["xxx" , "bar" , "foo" ]
247249
250+ resource = Resource .create ({})
248251 for name in span_names :
249- _create_start_and_end_span (name , span_processor )
252+ _create_start_and_end_span (name , span_processor , resource )
250253
251254 span_processor .shutdown ()
252255 self .assertTrue (my_exporter .is_shutdown )
@@ -264,15 +267,16 @@ def test_flush(self):
264267 span_names0 = ["xxx" , "bar" , "foo" ]
265268 span_names1 = ["yyy" , "baz" , "fox" ]
266269
270+ resource = Resource .create ({})
267271 for name in span_names0 :
268- _create_start_and_end_span (name , span_processor )
272+ _create_start_and_end_span (name , span_processor , resource )
269273
270274 self .assertTrue (span_processor .force_flush ())
271275 self .assertListEqual (span_names0 , spans_names_list )
272276
273277 # create some more spans to check that span processor still works
274278 for name in span_names1 :
275- _create_start_and_end_span (name , span_processor )
279+ _create_start_and_end_span (name , span_processor , resource )
276280
277281 self .assertTrue (span_processor .force_flush ())
278282 self .assertListEqual (span_names0 + span_names1 , spans_names_list )
@@ -298,10 +302,12 @@ def test_flush_from_multiple_threads(self):
298302 my_exporter , max_queue_size = 512 , max_export_batch_size = 128
299303 )
300304
305+ resource = Resource .create ({})
306+
301307 def create_spans_and_flush (tno : int ):
302308 for span_idx in range (num_spans ):
303309 _create_start_and_end_span (
304- f"Span { tno } -{ span_idx } " , span_processor
310+ f"Span { tno } -{ span_idx } " , span_processor , resource
305311 )
306312 self .assertTrue (span_processor .force_flush ())
307313
@@ -323,7 +329,8 @@ def test_flush_timeout(self):
323329 )
324330 span_processor = export .BatchSpanProcessor (my_exporter )
325331
326- _create_start_and_end_span ("foo" , span_processor )
332+ resource = Resource .create ({})
333+ _create_start_and_end_span ("foo" , span_processor , resource )
327334
328335 # check that the timeout is not meet
329336 with self .assertLogs (level = WARNING ):
@@ -341,8 +348,9 @@ def test_batch_span_processor_lossless(self):
341348 my_exporter , max_queue_size = 512 , max_export_batch_size = 128
342349 )
343350
351+ resource = Resource .create ({})
344352 for _ in range (512 ):
345- _create_start_and_end_span ("foo" , span_processor )
353+ _create_start_and_end_span ("foo" , span_processor , resource )
346354
347355 time .sleep (1 )
348356 self .assertTrue (span_processor .force_flush ())
@@ -363,9 +371,10 @@ def test_batch_span_processor_many_spans(self):
363371 schedule_delay_millis = 100 ,
364372 )
365373
374+ resource = Resource .create ({})
366375 for _ in range (4 ):
367376 for _ in range (256 ):
368- _create_start_and_end_span ("foo" , span_processor )
377+ _create_start_and_end_span ("foo" , span_processor , resource )
369378
370379 time .sleep (0.1 ) # give some time for the exporter to upload spans
371380
@@ -467,7 +476,8 @@ def test_batch_span_processor_scheduled_delay(self):
467476 )
468477
469478 # create single span
470- _create_start_and_end_span ("foo" , span_processor )
479+ resource = Resource .create ({})
480+ _create_start_and_end_span ("foo" , span_processor , resource )
471481
472482 self .assertTrue (export_event .wait (2 ))
473483 export_time = time .time ()
@@ -497,7 +507,8 @@ def test_batch_span_processor_reset_timeout(self):
497507 )
498508
499509 with mock .patch .object (span_processor .condition , "wait" ) as mock_wait :
500- _create_start_and_end_span ("foo" , span_processor )
510+ resource = Resource .create ({})
511+ _create_start_and_end_span ("foo" , span_processor , resource )
501512 self .assertTrue (export_event .wait (2 ))
502513
503514 # give some time for exporter to loop
0 commit comments