class Arvados::ArvadosClient

Attributes

request_id[R]

Public Instance Methods

execute(*args) click to toggle source
Calls superclass method
# File lib/arvados.rb, line 23
def execute(*args)
  @request_id = "req-" + Random.new.rand(2**128).to_s(36)[0..19]
  if args.last.is_a? Hash
    args.last[:headers] ||= {}
    args.last[:headers]['X-Request-Id'] = @request_id
  end
  begin
    super(*args)
  rescue => e
    if !e.message.match(/.*req-[0-9a-zA-Z]{20}.*/)
      raise $!, "#{$!} (Request ID: #{@request_id})", $!.backtrace
    end
    raise e
  end
end