24
24
from ddtrace ._trace .processor import TraceProcessor
25
25
from ddtrace ._trace .processor import TraceSamplingProcessor
26
26
from ddtrace ._trace .processor import TraceTagsProcessor
27
+ from ddtrace ._trace .provider import BaseContextProvider
27
28
from ddtrace ._trace .provider import DefaultContextProvider
28
29
from ddtrace ._trace .sampler import BasePrioritySampler
29
30
from ddtrace ._trace .sampler import BaseSampler
@@ -200,7 +201,7 @@ def __init__(
200
201
self ,
201
202
url : Optional [str ] = None ,
202
203
dogstatsd_url : Optional [str ] = None ,
203
- context_provider : Optional [DefaultContextProvider ] = None ,
204
+ context_provider : Optional [BaseContextProvider ] = None ,
204
205
) -> None :
205
206
"""
206
207
Create a new ``Tracer`` instance. A global tracer is already initialized
@@ -328,28 +329,6 @@ def sample(self, span):
328
329
else :
329
330
log .error ("No sampler available to sample span" )
330
331
331
- @property
332
- def sampler (self ):
333
- deprecate (
334
- "tracer.sampler is deprecated and will be removed." ,
335
- message = "To manually sample call tracer.sample(span) instead." ,
336
- category = DDTraceDeprecationWarning ,
337
- )
338
- return self ._sampler
339
-
340
- @sampler .setter
341
- def sampler (self , value ):
342
- deprecate (
343
- "Setting a custom sampler is deprecated and will be removed." ,
344
- message = """Please use DD_TRACE_SAMPLING_RULES to configure the sampler instead:
345
- https://ddtrace.readthedocs.io/en/stable/configuration.html#DD_TRACE_SAMPLING_RULES""" ,
346
- category = DDTraceDeprecationWarning ,
347
- )
348
- if asm_config ._apm_opt_out :
349
- log .warning ("Cannot set a custom sampler with Standalone ASM mode" )
350
- return
351
- self ._sampler = value
352
-
353
332
def on_start_span (self , func : Callable ) -> Callable :
354
333
"""Register a function to execute when a span start.
355
334
@@ -441,21 +420,7 @@ def get_log_correlation_context(self, active: Optional[Union[Context, Span]] = N
441
420
442
421
def configure (
443
422
self ,
444
- enabled : Optional [bool ] = None ,
445
- hostname : Optional [str ] = None ,
446
- port : Optional [int ] = None ,
447
- uds_path : Optional [str ] = None ,
448
- https : Optional [bool ] = None ,
449
- sampler : Optional [BaseSampler ] = None ,
450
- context_provider : Optional [DefaultContextProvider ] = None ,
451
- wrap_executor : Optional [Callable ] = None ,
452
- priority_sampling : Optional [bool ] = None ,
453
- settings : Optional [Dict [str , Any ]] = None ,
454
- dogstatsd_url : Optional [str ] = None ,
455
- writer : Optional [TraceWriter ] = None ,
456
- partial_flush_enabled : Optional [bool ] = None ,
457
- partial_flush_min_spans : Optional [int ] = None ,
458
- api_version : Optional [str ] = None ,
423
+ context_provider : Optional [BaseContextProvider ] = None ,
459
424
compute_stats_enabled : Optional [bool ] = None ,
460
425
appsec_enabled : Optional [bool ] = None ,
461
426
iast_enabled : Optional [bool ] = None ,
@@ -472,58 +437,14 @@ def configure(
472
437
:param bool appsec_standalone_enabled: When tracing is disabled ensures ASM support is still enabled.
473
438
:param List[TraceProcessor] trace_processors: This parameter sets TraceProcessor (ex: TraceFilters).
474
439
Trace processors are used to modify and filter traces based on certain criteria.
475
-
476
- :param bool enabled: If True, finished traces will be submitted to the API, else they'll be dropped.
477
- This parameter is deprecated and will be removed.
478
- :param str hostname: Hostname running the Trace Agent. This parameter is deprecated and will be removed.
479
- :param int port: Port of the Trace Agent. This parameter is deprecated and will be removed.
480
- :param str uds_path: The Unix Domain Socket path of the agent. This parameter is deprecated and will be removed.
481
- :param bool https: Whether to use HTTPS or HTTP. This parameter is deprecated and will be removed.
482
- :param object sampler: A custom Sampler instance, locally deciding to totally drop the trace or not.
483
- This parameter is deprecated and will be removed.
484
- :param object wrap_executor: callable that is used when a function is decorated with
485
- ``Tracer.wrap()``. This is an advanced option that usually doesn't need to be changed
486
- from the default value. This parameter is deprecated and will be removed.
487
- :param priority_sampling: This parameter is deprecated and will be removed in a future version.
488
- :param bool settings: This parameter is deprecated and will be removed.
489
- :param str dogstatsd_url: URL for UDP or Unix socket connection to DogStatsD
490
- This parameter is deprecated and will be removed.
491
- :param TraceWriter writer: This parameter is deprecated and will be removed.
492
- :param bool partial_flush_enabled: This parameter is deprecated and will be removed.
493
- :param bool partial_flush_min_spans: This parameter is deprecated and will be removed.
494
- :param str api_version: This parameter is deprecated and will be removed.
495
- :param bool compute_stats_enabled: This parameter is deprecated and will be removed.
496
440
"""
497
- if settings is not None :
498
- deprecate (
499
- "Support for ``tracer.configure(...)`` with the settings parameter is deprecated" ,
500
- message = "Please use the trace_processors parameter instead of settings['FILTERS']." ,
501
- version = "3.0.0" ,
502
- category = DDTraceDeprecationWarning ,
503
- )
504
- trace_processors = (trace_processors or []) + (settings .get ("FILTERS" ) or [])
505
-
506
441
return self ._configure (
507
- enabled ,
508
- hostname ,
509
- port ,
510
- uds_path ,
511
- https ,
512
- sampler ,
513
- context_provider ,
514
- wrap_executor ,
515
- priority_sampling ,
516
- trace_processors ,
517
- dogstatsd_url ,
518
- writer ,
519
- partial_flush_enabled ,
520
- partial_flush_min_spans ,
521
- api_version ,
522
- compute_stats_enabled ,
523
- appsec_enabled ,
524
- iast_enabled ,
525
- appsec_standalone_enabled ,
526
- True ,
442
+ context_provider = context_provider ,
443
+ trace_processors = trace_processors ,
444
+ compute_stats_enabled = compute_stats_enabled ,
445
+ appsec_enabled = appsec_enabled ,
446
+ iast_enabled = iast_enabled ,
447
+ appsec_standalone_enabled = appsec_standalone_enabled ,
527
448
)
528
449
529
450
def _configure (
@@ -534,7 +455,7 @@ def _configure(
534
455
uds_path : Optional [str ] = None ,
535
456
https : Optional [bool ] = None ,
536
457
sampler : Optional [BaseSampler ] = None ,
537
- context_provider : Optional [DefaultContextProvider ] = None ,
458
+ context_provider : Optional [BaseContextProvider ] = None ,
538
459
wrap_executor : Optional [Callable ] = None ,
539
460
priority_sampling : Optional [bool ] = None ,
540
461
trace_processors : Optional [List [TraceProcessor ]] = None ,
@@ -547,48 +468,18 @@ def _configure(
547
468
appsec_enabled : Optional [bool ] = None ,
548
469
iast_enabled : Optional [bool ] = None ,
549
470
appsec_standalone_enabled : Optional [bool ] = None ,
550
- log_deprecations : bool = False ,
551
471
) -> None :
552
472
if enabled is not None :
553
473
self .enabled = enabled
554
- if log_deprecations :
555
- deprecate (
556
- "Enabling/Disabling tracing after application start is deprecated" ,
557
- message = "Please use DD_TRACE_ENABLED instead." ,
558
- version = "3.0.0" ,
559
- category = DDTraceDeprecationWarning ,
560
- )
561
-
562
- if priority_sampling is not None and log_deprecations :
563
- deprecate (
564
- "Disabling priority sampling is deprecated" ,
565
- message = "Calling `tracer.configure(priority_sampling=....) has no effect" ,
566
- version = "3.0.0" ,
567
- category = DDTraceDeprecationWarning ,
568
- )
569
474
570
475
if trace_processors is not None :
571
476
self ._user_trace_processors = trace_processors
572
477
573
478
if partial_flush_enabled is not None :
574
479
self ._partial_flush_enabled = partial_flush_enabled
575
- if log_deprecations :
576
- deprecate (
577
- "Configuring partial flushing after application start is deprecated" ,
578
- message = "Please use DD_TRACE_PARTIAL_FLUSH_ENABLED to enable/disable the partial flushing instead." ,
579
- version = "3.0.0" ,
580
- category = DDTraceDeprecationWarning ,
581
- )
582
480
583
481
if partial_flush_min_spans is not None :
584
482
self ._partial_flush_min_spans = partial_flush_min_spans
585
- if log_deprecations :
586
- deprecate (
587
- "Configuring partial flushing after application start is deprecated" ,
588
- message = "Please use DD_TRACE_PARTIAL_FLUSH_MIN_SPANS to set the flushing threshold instead." ,
589
- version = "3.0.0" ,
590
- category = DDTraceDeprecationWarning ,
591
- )
592
483
593
484
if appsec_enabled is not None :
594
485
asm_config ._asm_enabled = appsec_enabled
@@ -620,33 +511,11 @@ def _configure(
620
511
if sampler is not None :
621
512
self ._sampler = sampler
622
513
self ._user_sampler = self ._sampler
623
- if log_deprecations :
624
- deprecate (
625
- "Configuring custom samplers is deprecated" ,
626
- message = "Please use DD_TRACE_SAMPLING_RULES to configure the sample rates instead" ,
627
- category = DDTraceDeprecationWarning ,
628
- removal_version = "3.0.0" ,
629
- )
630
514
631
515
if dogstatsd_url is not None :
632
- if log_deprecations :
633
- deprecate (
634
- "Configuring dogstatsd_url after application start is deprecated" ,
635
- message = "Please use DD_DOGSTATSD_URL instead." ,
636
- version = "3.0.0" ,
637
- category = DDTraceDeprecationWarning ,
638
- )
639
516
self ._dogstatsd_url = dogstatsd_url
640
517
641
518
if any (x is not None for x in [hostname , port , uds_path , https ]):
642
- if log_deprecations :
643
- deprecate (
644
- "Configuring tracer agent connection after application start is deprecated" ,
645
- message = "Please use DD_TRACE_AGENT_URL instead." ,
646
- version = "3.0.0" ,
647
- category = DDTraceDeprecationWarning ,
648
- )
649
-
650
519
# If any of the parts of the URL have updated, merge them with
651
520
# the previous writer values.
652
521
prev_url_parsed = compat .parse .urlparse (self ._agent_url )
@@ -670,13 +539,6 @@ def _configure(
670
539
new_url = None
671
540
672
541
if compute_stats_enabled is not None :
673
- if log_deprecations :
674
- deprecate (
675
- "Configuring tracer stats computation after application start is deprecated" ,
676
- message = "Please use DD_TRACE_STATS_COMPUTATION_ENABLED instead." ,
677
- version = "3.0.0" ,
678
- category = DDTraceDeprecationWarning ,
679
- )
680
542
self ._compute_stats = compute_stats_enabled
681
543
682
544
try :
@@ -685,14 +547,6 @@ def _configure(
685
547
# It's possible the writer never got started
686
548
pass
687
549
688
- if api_version is not None and log_deprecations :
689
- deprecate (
690
- "Configuring Tracer API version after application start is deprecated" ,
691
- message = "Please use DD_TRACE_API_VERSION instead." ,
692
- version = "3.0.0" ,
693
- category = DDTraceDeprecationWarning ,
694
- )
695
-
696
550
if writer is not None :
697
551
self ._writer = writer
698
552
elif any (x is not None for x in [new_url , api_version , sampler , dogstatsd_url , appsec_enabled ]):
@@ -754,12 +608,6 @@ def _configure(
754
608
755
609
if wrap_executor is not None :
756
610
self ._wrap_executor = wrap_executor
757
- if log_deprecations :
758
- deprecate (
759
- "Support for tracer.configure(...) with the wrap_executor parameter is deprecated" ,
760
- version = "3.0.0" ,
761
- category = DDTraceDeprecationWarning ,
762
- )
763
611
764
612
self ._generate_diagnostic_logs ()
765
613
@@ -1344,7 +1192,7 @@ def _handle_sampler_update(self, cfg: Config) -> None:
1344
1192
and self ._user_sampler
1345
1193
):
1346
1194
# if we get empty configs from rc for both sample rate and rules, we should revert to the user sampler
1347
- self .sampler = self ._user_sampler
1195
+ self ._sampler = self ._user_sampler
1348
1196
return
1349
1197
1350
1198
if cfg ._get_source ("_trace_sample_rate" ) != "remote_config" and self ._user_sampler :
0 commit comments