Module: Datadog::Tracing::Contrib::Extensions

Defined in:
lib/datadog/tracing/contrib/extensions.rb

Overview

Extensions that can be added to the base library Adds registry, configuration access for integrations.

DEV: The Registry should probably be part of the core tracer as it represents a global tracer repository that is strongly intertwined with the tracer lifecycle and deeply modifies the tracer initialization process. Most of this file should probably live inside the tracer core.

Defined Under Namespace

Modules: Configuration, Helpers

Class Method Summary collapse

Class Method Details

.extend!Object



21
22
23
24
25
26
27
28
29
30
# File 'lib/datadog/tracing/contrib/extensions.rb', line 21

def self.extend!
  Datadog.singleton_class.prepend Helpers
  Datadog.singleton_class.prepend Configuration

  # DEV: We want settings to only apply to the `tracing` subgroup.
  #      Until we have a better API of accessing that settings class,
  #      we have to dig into it like this.
  settings_class = Core::Configuration::Settings.options[:tracing].default.call.class
  settings_class.include(Configuration::Settings)
end