class NewRelic::TelemetrySdk::TraceClient

The {TraceClient} sends {Span} data to the Trace API host endpoint.

@example

trace_client = NewRelic::TelemetrySdk::TraceClient.new

span = NewRelic::TelemetrySdk::Span.new(
  id: random_id(16),
  trace_id: random_id(32),
  start_time: Time.now,
  name: "Net::HTTP#get"
)
trace_client.report span

Public Class Methods

new(host: trace_api_host) click to toggle source
Calls superclass method NewRelic::TelemetrySdk::Client::new
# File lib/newrelic/telemetry_sdk/clients/trace_client.rb, line 24
def initialize host: trace_api_host
  super host: host,
        path: '/trace/v1',
        headers: {
          :'Content-Type' => 'application/json',
          :'Api-Key' => api_insert_key,
          :'Data-Format' => 'newrelic',
          :'Data-Format-Version' => '1'
        },
        payload_type: :spans
end

Private Instance Methods

trace_api_host() click to toggle source
# File lib/newrelic/telemetry_sdk/clients/trace_client.rb, line 38
def trace_api_host
  TelemetrySdk.config.trace_api_host
end