class ElasticLogger::ElkRotator

Public Instance Methods

rotate() click to toggle source
# File lib/elastic-logger/elk_rotator.rb, line 6
def rotate
  logs.each do |name, value|
    hash = value.select { |k,v| keys.include?(k) }
    client.index(index: index, type: index, id: name, body: hash)
  end
end

Private Instance Methods

client() click to toggle source
# File lib/elastic-logger/elk_rotator.rb, line 19
def client
  @client ||= Elasticsearch::Client.new(host: config.host)
end
config() click to toggle source
# File lib/elastic-logger/elk_rotator.rb, line 23
def config
  ElasticLogger.configuration
end
index() click to toggle source
# File lib/elastic-logger/elk_rotator.rb, line 27
def index
  'logs_rotate_info'
end
keys() click to toggle source
# File lib/elastic-logger/elk_rotator.rb, line 31
def keys
  ["delete", "backup"]
end
logs() click to toggle source
# File lib/elastic-logger/elk_rotator.rb, line 15
def logs
  @logs ||= ElasticLogger::Types.new.by_writter('ElasticLogger::ElkWriter')
end