Class: Datadog::Core::Configuration::AgentSettingsResolver

Inherits:
Object
  • Object
show all
Defined in:
lib/datadog/core/configuration/agent_settings_resolver.rb

Overview

This class unifies all the different ways that users can configure how we talk to the agent.

It has quite a lot of complexity, but this complexity just reflects the actual complexity we have around our configuration today. E.g., this is just all of the complexity regarding agent settings gathered together in a single place. As we deprecate more and more of the different ways that these things can be configured, this class will reflect that simplification as well.

Whenever there is a conflict (different configurations are provided in different orders), it MUST warn the users about it and pick a value based on the following priority: code > environment variable > defaults. DEV-2.0: The deprecated_for_removal_transport_configuration_proc should be removed.

Defined Under Namespace

Classes: AgentSettings, TransportOptionsResolver

Class Method Summary collapse

Class Method Details

.call(settings, logger: Datadog.logger) ⇒ Object



53
54
55
# File 'lib/datadog/core/configuration/agent_settings_resolver.rb', line 53

def self.call(settings, logger: Datadog.logger)
  new(settings, logger: logger).send(:call)
end