class Datadog::Transport::HTTP::Adapters::UnixSocket::HTTP

Re-implements Net:HTTP with underlying Unix socket

Constants

DEFAULT_TIMEOUT

Attributes

filepath[R]
unix_socket[R]

Public Class Methods

new(filepath, options = {}) click to toggle source
Calls superclass method
# File lib/ddtrace/transport/http/adapters/unix_socket.rb, line 45
def initialize(filepath, options = {})
  super('localhost', 80)
  @filepath = filepath
  @read_timeout = options.fetch(:read_timeout, DEFAULT_TIMEOUT)
  @continue_timeout = options.fetch(:continue_timeout, DEFAULT_TIMEOUT)
  @debug_output = options[:debug_output] if options.key?(:debug_output)
end

Public Instance Methods

connect() click to toggle source
# File lib/ddtrace/transport/http/adapters/unix_socket.rb, line 53
def connect
  @unix_socket = UNIXSocket.open(filepath)
  @socket = ::Net::BufferedIO.new(@unix_socket).tap do |socket|
    socket.read_timeout = @read_timeout
    socket.continue_timeout = @continue_timeout
    socket.debug_output = @debug_output
  end
  on_connect
end