Module: Datadog::Tracing::Contrib::Extensions::Configuration::Settings
- Defined in:
- lib/datadog/tracing/contrib/extensions.rb
Overview
Extensions for Datadog::Core::Configuration::Settings
Constant Summary collapse
- InvalidIntegrationError =
Class.new(StandardError)
Instance Method Summary collapse
-
#[](integration_name, key = :default) ⇒ Datadog::Tracing::Contrib::Configuration::Settings
For the provided
integration_name
, resolves a matching configuration for the provided integration from an integration-specifickey
. - #ignore_integration_load_errors=(value) ⇒ Object
-
#instrument(integration_name, options = {}, &block) ⇒ Datadog::Tracing::Contrib::Integration
(also: #use)
Applies instrumentation for the provided
integration_name
.
Instance Method Details
#[](integration_name, key = :default) ⇒ Datadog::Tracing::Contrib::Configuration::Settings
For the provided integration_name
, resolves a matching configuration
for the provided integration from an integration-specific key
.
How the matching is performed is integration-specific.
156 157 158 159 |
# File 'lib/datadog/tracing/contrib/extensions.rb', line 156 def [](integration_name, key = :default) integration = fetch_integration(integration_name) integration.resolve(key) unless integration.nil? end |
#ignore_integration_load_errors=(value) ⇒ Object
188 189 190 |
# File 'lib/datadog/tracing/contrib/extensions.rb', line 188 def ignore_integration_load_errors=(value) @ignore_integration_load_errors = value end |
#instrument(integration_name, options = {}, &block) ⇒ Datadog::Tracing::Contrib::Integration Also known as: use
Applies instrumentation for the provided integration_name
.
Options may be provided, that are specific to that instrumentation. See the instrumentation's settings file for a list of available options.
125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 |
# File 'lib/datadog/tracing/contrib/extensions.rb', line 125 def instrument(integration_name, = {}, &block) integration = fetch_integration(integration_name) unless integration.nil? || !integration.default_configuration.enabled configuration_name = [:describes] || :default = .reject { |k, _v| k == :describes } integration.configure(configuration_name, , &block) instrumented_integrations[integration_name] = integration # Add to activation list integrations_pending_activation << integration end integration end |