Module: Datadog::Tracing::Transport::HTTP

Defined in:
lib/datadog/tracing/transport/http.rb,
lib/datadog/tracing/transport/http/api.rb,
lib/datadog/tracing/transport/http/client.rb,
lib/datadog/tracing/transport/http/traces.rb,
lib/datadog/tracing/transport/http/statistics.rb

Overview

Namespace for HTTP transport components

Defined Under Namespace

Modules: API, Statistics, Traces Classes: Client

Class Method Summary collapse

Class Method Details

.default(agent_settings:, logger: Datadog.logger, api_version: nil, headers: nil) ⇒ Object

Builds a new Transport::HTTP::Client with default settings Pass a block to override any settings.



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/datadog/tracing/transport/http.rb', line 19

def default(
  agent_settings:,
  logger: Datadog.logger,
  api_version: nil,
  headers: nil
)
  Core::Transport::HTTP.build(
    api_instance_class: Traces::API::Instance,
    agent_settings: agent_settings,
    logger: logger,
    api_version: api_version,
    headers: headers
  ) do |transport|
    apis = API.defaults

    transport.api API::V4, apis[API::V4], fallback: API::V3, default: true
    transport.api API::V3, apis[API::V3]

    # Call block to apply any customization, if provided
    yield(transport) if block_given?
  end.to_transport(Transport::Traces::Transport)
end