lib/elasticsearch/transport/transport/http/faraday.rb in elasticsearch-transport-7.1.0 vs lib/elasticsearch/transport/transport/http/faraday.rb in elasticsearch-transport-7.2.0

- old
+ new

@@ -40,28 +40,42 @@ response = connection.connection.run_request(method.downcase.to_sym, url, ( body ? __convert_to_json(body) : nil ), headers) - Response.new response.status, response.body, response.headers + Response.new response.status, decompress_response(response.body), response.headers end end # Builds and returns a connection # # @return [Connections::Connection] # def __build_connection(host, options={}, block=nil) client = ::Faraday.new(__full_url(host), options, &block) + apply_headers(client, options) Connections::Connection.new :host => host, :connection => client end # Returns an array of implementation specific connection errors. # # @return [Array] # def host_unreachable_exceptions [::Faraday::Error::ConnectionFailed, ::Faraday::Error::TimeoutError] + end + + private + + def user_agent_header(client) + @user_agent ||= begin + meta = ["RUBY_VERSION: #{RUBY_VERSION}"] + if RbConfig::CONFIG && RbConfig::CONFIG['host_os'] + meta << "#{RbConfig::CONFIG['host_os'].split('_').first[/[a-z]+/i].downcase} #{RbConfig::CONFIG['target_cpu']}" + end + meta << "#{client.headers[USER_AGENT_STR]}" + "elasticsearch-ruby/#{VERSION} (#{meta.join('; ')})" + end end end end end end