Class: EsExperiment::Client

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/es_experiment/client.rb

Instance Method Summary collapse

Instance Method Details

#connection(config, tries = 0) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/es_experiment/client.rb', line 6

def connection(config, tries = 0)
  return @conn if @conn&.cluster&.health

  conn = Elasticsearch::Client.new(host: config.url)
  conn.cluster.health
  @conn = conn
rescue Faraday::ConnectionFailed
  raise EsExperiment::ConexaoError if config.connection_tries == tries

  sleep config.time_between_connection_tries

  tries += 1
  connection(config, tries)
end