class Elb2Logstalgia::Entry
Public Class Methods
new(*args, &block)
click to toggle source
Calls superclass method
# File lib/elb2logstalgia/entry.rb, line 28 def initialize(*args, &block) begin keys = [ :timestamp, :hostname, :path, :response_code, :response_size, :success, :response_color, :referrer_url, :user_agent, :virtual_host, :pid, ] params_hash = {} input = *args[0] input.each do |pair| k = pair[0] v = pair[1] params_hash[k] = v end # now we can derive some additional values derived_params = _deriveParams(params_hash) super(derived_params) rescue StandardError => e raise e end end
Public Instance Methods
output()
click to toggle source
# File lib/elb2logstalgia/entry.rb, line 64 def output fields = [ :timestamp, :hostname, :path, :response_code, :response_size, :success, ] fields.map {|x| self.fetch(x).to_s}.join('|') end
Private Instance Methods
_deriveParams(params)
click to toggle source
# File lib/elb2logstalgia/entry.rb, line 79 def _deriveParams(params) input = Hashie::Mash.new(params) derived = Hashie::Mash.new # calculate success from response code derived.success = input.response_code.to_i < 400 ? 1 : 0 derived.merge(input) end