module LogLineParser::InstanceMethods

Constants

SCHEMES
SLASH
SLASH_RE
SPACE_RE

Attributes

method[R]
protocol[R]
referer_host[R]
referer_resource[R]
referer_scheme[R]
resource[R]

Public Instance Methods

date(offset=0) click to toggle source
# File lib/log_line_parser.rb, line 155
def date(offset=0)
  DateTime.parse((self.time + offset * 86400).to_s)
end
parse_referer() click to toggle source
# File lib/log_line_parser.rb, line 166
def parse_referer
  return if self.referer == "-".freeze
  parts = self.referer.split(SLASH_RE, 4)
  if SCHEMES.include? parts[0]
    @referer_scheme = parts[0]
    @referer_host = parts[2]
    @referer_resource = parts[3] ? SLASH + parts[3] : SLASH
  else
    @referer_scheme = "".freeze
    @referer_host = "".freeze
    @referer_resource = self.referer
  end
end
parse_request() click to toggle source
# File lib/log_line_parser.rb, line 159
def parse_request
  request = self.first_line_of_request.split(SPACE_RE)
  @method = request.shift
  @protocol = request.pop
  @resource = request.size == 1 ? request[0] : request.join(" ".freeze)
end
referred_from_host?(host_name) click to toggle source
# File lib/log_line_parser.rb, line 180
def referred_from_host?(host_name)
  @referer_host == host_name
end