@@ -62,6 +62,7 @@ def test_trace_context_injection(self):
6262 self .assertEqual (record .otelSpanID , "0" )
6363 self .assertEqual (record .otelTraceID , "0" )
6464 self .assertEqual (record .otelServiceName , "" )
65+ self .assertEqual (record .otelTraceSampled , False )
6566
6667
6768def log_hook (span , record ):
@@ -82,24 +83,28 @@ def tearDown(self):
8283 super ().tearDown ()
8384 LoggingInstrumentor ().uninstrument ()
8485
85- def assert_trace_context_injected (self , span_id , trace_id ):
86+ def assert_trace_context_injected (self , span_id , trace_id , trace_sampled ):
8687 with self .caplog .at_level (level = logging .INFO ):
8788 logger = logging .getLogger ("test logger" )
8889 logger .info ("hello" )
8990 self .assertEqual (len (self .caplog .records ), 1 )
9091 record = self .caplog .records [0 ]
9192 self .assertEqual (record .otelSpanID , span_id )
9293 self .assertEqual (record .otelTraceID , trace_id )
94+ self .assertEqual (record .otelTraceSampled , trace_sampled )
9395 self .assertEqual (record .otelServiceName , "unknown_service" )
9496
9597 def test_trace_context_injection (self ):
9698 with self .tracer .start_as_current_span ("s1" ) as span :
9799 span_id = format (span .get_span_context ().span_id , "016x" )
98100 trace_id = format (span .get_span_context ().trace_id , "032x" )
99- self .assert_trace_context_injected (span_id , trace_id )
101+ trace_sampled = span .get_span_context ().trace_flags .sampled
102+ self .assert_trace_context_injected (
103+ span_id , trace_id , trace_sampled
104+ )
100105
101106 def test_trace_context_injection_without_span (self ):
102- self .assert_trace_context_injected ("0" , "0" )
107+ self .assert_trace_context_injected ("0" , "0" , False )
103108
104109 @mock .patch ("logging.basicConfig" )
105110 def test_basic_config_called (self , basic_config_mock ):
@@ -163,6 +168,7 @@ def test_log_hook(self):
163168 with self .tracer .start_as_current_span ("s1" ) as span :
164169 span_id = format (span .get_span_context ().span_id , "016x" )
165170 trace_id = format (span .get_span_context ().trace_id , "032x" )
171+ trace_sampled = span .get_span_context ().trace_flags .sampled
166172 with self .caplog .at_level (level = logging .INFO ):
167173 logger = logging .getLogger ("test logger" )
168174 logger .info ("hello" )
@@ -171,6 +177,7 @@ def test_log_hook(self):
171177 self .assertEqual (record .otelSpanID , span_id )
172178 self .assertEqual (record .otelTraceID , trace_id )
173179 self .assertEqual (record .otelServiceName , "unknown_service" )
180+ self .assertEqual (record .otelTraceSampled , trace_sampled )
174181 self .assertEqual (
175182 record .custom_user_attribute_from_log_hook , "some-value"
176183 )
@@ -179,14 +186,18 @@ def test_uninstrumented(self):
179186 with self .tracer .start_as_current_span ("s1" ) as span :
180187 span_id = format (span .get_span_context ().span_id , "016x" )
181188 trace_id = format (span .get_span_context ().trace_id , "032x" )
182- self .assert_trace_context_injected (span_id , trace_id )
189+ trace_sampled = span .get_span_context ().trace_flags .sampled
190+ self .assert_trace_context_injected (
191+ span_id , trace_id , trace_sampled
192+ )
183193
184194 LoggingInstrumentor ().uninstrument ()
185195
186196 self .caplog .clear ()
187197 with self .tracer .start_as_current_span ("s1" ) as span :
188198 span_id = format (span .get_span_context ().span_id , "016x" )
189199 trace_id = format (span .get_span_context ().trace_id , "032x" )
200+ trace_sampled = span .get_span_context ().trace_flags .sampled
190201 with self .caplog .at_level (level = logging .INFO ):
191202 logger = logging .getLogger ("test logger" )
192203 logger .info ("hello" )
@@ -195,3 +206,4 @@ def test_uninstrumented(self):
195206 self .assertFalse (hasattr (record , "otelSpanID" ))
196207 self .assertFalse (hasattr (record , "otelTraceID" ))
197208 self .assertFalse (hasattr (record , "otelServiceName" ))
209+ self .assertFalse (hasattr (record , "otelTraceSampled" ))
0 commit comments