@@ -222,6 +222,7 @@ def my_traces_sampler(sampling_context):
222222 {
223223 "incoming_sample_rate" : 1.0 ,
224224 "incoming_sampled" : "true" ,
225+ "sentry_trace_header_parent_sampled" : 1 ,
225226 "use_local_traces_sampler" : False ,
226227 "local_traces_sampler_result" : 0.5 ,
227228 "local_traces_sample_rate" : 0.7 ,
@@ -233,6 +234,7 @@ def my_traces_sampler(sampling_context):
233234 {
234235 "incoming_sample_rate" : 1.0 ,
235236 "incoming_sampled" : "true" ,
237+ "sentry_trace_header_parent_sampled" : 1 ,
236238 "use_local_traces_sampler" : True ,
237239 "local_traces_sampler_result" : 0.5 ,
238240 "local_traces_sample_rate" : 0.7 ,
@@ -244,17 +246,19 @@ def my_traces_sampler(sampling_context):
244246 {
245247 "incoming_sample_rate" : 1.0 ,
246248 "incoming_sampled" : "false" ,
249+ "sentry_trace_header_parent_sampled" : 1 ,
247250 "use_local_traces_sampler" : False ,
248251 "local_traces_sampler_result" : 0.5 ,
249252 "local_traces_sample_rate" : 0.7 ,
250253 },
251254 1.0 , # expected_sample_rate
252- "tracing-disabled-no-transactions-should-be-sent " , # expected_sampled
255+ "false " , # expected_sampled
253256 ),
254257 (
255258 {
256259 "incoming_sample_rate" : 1.0 ,
257260 "incoming_sampled" : "false" ,
261+ "sentry_trace_header_parent_sampled" : 0 ,
258262 "use_local_traces_sampler" : True ,
259263 "local_traces_sampler_result" : 0.5 ,
260264 "local_traces_sample_rate" : 0.7 ,
@@ -266,6 +270,7 @@ def my_traces_sampler(sampling_context):
266270 {
267271 "incoming_sample_rate" : 1.0 ,
268272 "incoming_sampled" : "true" ,
273+ "sentry_trace_header_parent_sampled" : 1 ,
269274 "use_local_traces_sampler" : False ,
270275 "local_traces_sampler_result" : 0.5 ,
271276 "local_traces_sample_rate" : None ,
@@ -277,6 +282,7 @@ def my_traces_sampler(sampling_context):
277282 {
278283 "incoming_sample_rate" : 1.0 ,
279284 "incoming_sampled" : "true" ,
285+ "sentry_trace_header_parent_sampled" : 1 ,
280286 "use_local_traces_sampler" : True ,
281287 "local_traces_sampler_result" : 0.5 ,
282288 "local_traces_sample_rate" : None ,
@@ -288,6 +294,7 @@ def my_traces_sampler(sampling_context):
288294 {
289295 "incoming_sample_rate" : 1.0 ,
290296 "incoming_sampled" : "false" ,
297+ "sentry_trace_header_parent_sampled" : 1 ,
291298 "use_local_traces_sampler" : False ,
292299 "local_traces_sampler_result" : 0.5 ,
293300 "local_traces_sample_rate" : None ,
@@ -299,13 +306,26 @@ def my_traces_sampler(sampling_context):
299306 {
300307 "incoming_sample_rate" : 1.0 ,
301308 "incoming_sampled" : "false" ,
309+ "sentry_trace_header_parent_sampled" : 0 ,
302310 "use_local_traces_sampler" : True ,
303311 "local_traces_sampler_result" : 0.5 ,
304312 "local_traces_sample_rate" : None ,
305313 },
306314 0.5 , # expected_sample_rate
307315 "false" , # expected_sampled
308316 ),
317+ (
318+ {
319+ "incoming_sample_rate" : 1.0 ,
320+ "incoming_sampled" : "true" ,
321+ "sentry_trace_header_parent_sampled" : None ,
322+ "use_local_traces_sampler" : False ,
323+ "local_traces_sampler_result" : 0.5 ,
324+ "local_traces_sample_rate" : 0.7 ,
325+ },
326+ 0.7 , # expected_sample_rate
327+ "true" , # expected_sampled
328+ ),
309329 ],
310330 ids = (
311331 "1 traces_sample_rate does not override incoming" ,
@@ -316,6 +336,7 @@ def my_traces_sampler(sampling_context):
316336 "6 traces_sampler overrides incoming (traces_sample_rate not set)" ,
317337 "7 forwarding incoming (traces_sample_rate not set) (incoming not sampled)" ,
318338 "8 traces_sampler overrides incoming (traces_sample_rate not set) (incoming not sampled)" ,
339+ "9 traces_sample_rate overrides incoming" ,
319340 ),
320341)
321342def test_dsc_sample_rate_change (
@@ -351,7 +372,11 @@ def my_traces_sampler(sampling_context):
351372
352373 # This is what the upstream service sends us
353374 incoming_trace_id = "771a43a4192642f0b136d5159a501700"
354- sentry_trace = f"{ incoming_trace_id } -1234567890abcdef-{ 1 if test_data ['incoming_sampled' ] == 'true' else 0 } "
375+ if test_data ["sentry_trace_header_parent_sampled" ] is None :
376+ sentry_trace = f"{ incoming_trace_id } -1234567890abcdef"
377+ else :
378+ sentry_trace = f"{ incoming_trace_id } -1234567890abcdef-{ test_data ["sentry_trace_header_parent_sampled" ]} "
379+
355380 baggage = (
356381 f"sentry-trace_id={ incoming_trace_id } , "
357382 f"sentry-sample_rate={ str (test_data ['incoming_sample_rate' ])} , "
0 commit comments