Class: OpenCensus::Trace::Exporters::JaegerDriver::UDPSender

Inherits:
Object
  • Object
show all
Includes:
Logging
Defined in:
lib/opencensus/trace/exporters/jaeger_driver/udp_sender.rb

Instance Method Summary collapse

Methods included from Logging

#default_logger, included, logger

Constructor Details

#initialize(host, port, logger, protocol_class) ⇒ UDPSender

Returns a new instance of UDPSender.



12
13
14
15
16
17
18
19
# File 'lib/opencensus/trace/exporters/jaeger_driver/udp_sender.rb', line 12

def initialize(host, port, logger, protocol_class)
  @logger = logger || default_logger
  @host = host
  @port = port
  @transport = UDPTransport.new(host, port, logger)
  @protocol = protocol_class.new(@transport)
  @client = ::Jaeger::Thrift::Agent::Client.new(@protocol)
end

Instance Method Details

#send_spans(spans) ⇒ Object



21
22
23
24
25
# File 'lib/opencensus/trace/exporters/jaeger_driver/udp_sender.rb', line 21

def send_spans(spans)
  @client.emitBatch(spans)
rescue StandardError => e
  @logger.error "Failure while sending a batch of spans: #{e}"
end