Class: Embulk::Input::Elasticsearch::Connection

Inherits:
Object
  • Object
show all
Defined in:
lib/embulk/input/elasticsearch/connection.rb

Class Method Summary collapse

Class Method Details

.create_client(task) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/embulk/input/elasticsearch/connection.rb', line 5

def self.create_client(task)
  transport = ::Elasticsearch::Transport::Transport::HTTP::Faraday.new(
    {
      hosts: task['nodes'].map{ |node| Hash[node.map{ |k, v| [k.to_sym, v] }] },
      options: {
        reload_connections: task['reload_connections'],
        reload_on_failure: task['reload_on_failure'],
        retry_on_failure: task['retry_on_failure'],
        transport_options: {
          request: { timeout: task['request_timeout'] }
        }
      }
    }
  )

  ::Elasticsearch::Client.new transport: transport
end