elastic_searchable 0.6.3 → 0.6.4
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/elastic_searchable/index.rb +4 -3
- data/lib/elastic_searchable/version.rb +1 -1
- data/lib/elastic_searchable.rb +10 -1
- metadata +3 -3
@@ -66,7 +66,7 @@ module ElasticSearchable
|
|
66
66
|
options[:start] ||= (batch - 1) * options[:batch_size]
|
67
67
|
scope = options.delete(:scope) || self
|
68
68
|
scope.find_in_batches(options) do |records|
|
69
|
-
|
69
|
+
ElasticSearchable.logger.info "reindexing batch ##{batch}..."
|
70
70
|
batch += 1
|
71
71
|
actions = []
|
72
72
|
records.each do |record|
|
@@ -76,13 +76,14 @@ module ElasticSearchable
|
|
76
76
|
actions << {:index => {'_index' => index_name, '_type' => index_type, '_id' => record.id}}.to_json
|
77
77
|
actions << doc
|
78
78
|
rescue => e
|
79
|
-
|
79
|
+
ElasticSearchable.logger.warn "Unable to bulk index record: #{record.inspect} [#{e.message}]"
|
80
80
|
end
|
81
81
|
end
|
82
82
|
begin
|
83
83
|
ElasticSearchable.request(:put, '/_bulk', :body => "\n#{actions.join("\n")}\n") if actions.any?
|
84
84
|
rescue ElasticError => e
|
85
|
-
|
85
|
+
ElasticSearchable.logger.warn "Error indexing batch ##{batch}: #{e.message}"
|
86
|
+
ElasticSearchable.logger.warn e
|
86
87
|
end
|
87
88
|
end
|
88
89
|
end
|
data/lib/elastic_searchable.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'httparty'
|
2
|
+
require 'logger'
|
2
3
|
require 'elastic_searchable/active_record'
|
3
4
|
|
4
5
|
module ElasticSearchable
|
@@ -19,10 +20,18 @@ module ElasticSearchable
|
|
19
20
|
@@default_index || 'elastic_searchable'
|
20
21
|
end
|
21
22
|
|
23
|
+
@@logger = Logger.new(STDOUT)
|
24
|
+
@@logger.level = Logger::INFO
|
25
|
+
def logger=(logger)
|
26
|
+
@@logger = logger
|
27
|
+
end
|
28
|
+
def logger
|
29
|
+
@@logger
|
30
|
+
end
|
22
31
|
#perform a request to the elasticsearch server
|
23
32
|
def request(method, url, options = {})
|
24
33
|
response = self.send(method, url, options)
|
25
|
-
|
34
|
+
logger.debug "elasticsearch request: #{method} #{url} #{"took #{response['took']}ms" if response['took']}"
|
26
35
|
validate_response response
|
27
36
|
response
|
28
37
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: elastic_searchable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 15
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 6
|
9
|
-
-
|
10
|
-
version: 0.6.
|
9
|
+
- 4
|
10
|
+
version: 0.6.4
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Ryan Sonnek
|