Module: Close
Overview
Index closing operations
Constant Summary
Constants included from Logging
Instance Method Summary collapse
- #close ⇒ Object
- #close_populate_indices(indices, date_from, date_to, daysago) ⇒ Object
- #do_close(indices) ⇒ Object
Methods included from Logging
configure_logger_for, #log, log_level, logger_for
Instance Method Details
#close ⇒ Object
49 50 51 52 53 54 55 |
# File 'lib/elastic_manager/close.rb', line 49 def close indices, date_from, date_to, daysago = prepare_vars prechecks(date_from, date_to) indices = close_populate_indices(indices, date_from, date_to, daysago) log.debug indices.inspect do_close(indices) end |
#close_populate_indices(indices, date_from, date_to, daysago) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/elastic_manager/close.rb', line 9 def close_populate_indices(indices, date_from, date_to, daysago) result = [] if indices.length == 1 && indices.first == '_all' result = @elastic.all_indices(date_from, date_to, daysago, 'open', nil, @config) else if date_from.nil? result = @elastic.all_indices(date_from, date_to, daysago, 'open', nil, @config).select { |r| r.start_with?(*indices) } else date_from.upto(date_to) do |date| indices.each do |index| date_formatted = date.to_s.tr('-', '.') result << "#{index}-#{date_formatted}" end end end end return result unless result.empty? log.fatal 'no indices for work' exit 1 end |
#do_close(indices) ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/elastic_manager/close.rb', line 33 def do_close(indices) indices.each do |index| next if skip_index?(index, 'close') response = @elastic.request(:get, "/_cat/indices/#{index}") if index_exist?(response) next if already?(response, 'close') elastic_action_with_log('close_index', index, @config['settings']['box_types']['ingest']) else log.warn "#{index} index not found" end end end |