class Fluent::Plugin::Apache2Parser
Constants
- REGEXP
- TIME_FORMAT
Public Class Methods
new()
click to toggle source
Calls superclass method
Fluent::Plugin::Base::new
# File lib/fluent/plugin/parser_apache2.rb, line 27 def initialize super @time_parser = time_parser_create(format: TIME_FORMAT) @mutex = Mutex.new end
Public Instance Methods
parse(text) { |nil, nil| ... }
click to toggle source
# File lib/fluent/plugin/parser_apache2.rb, line 37 def parse(text) m = REGEXP.match(text) unless m yield nil, nil return end host = m['host'] host = (host == '-') ? nil : host user = m['user'] user = (user == '-') ? nil : user time = m['time'] time = @mutex.synchronize { @time_parser.parse(time) } method = m['method'] path = m['path'] code = m['code'].to_i code = nil if code == 0 size = m['size'] size = (size == '-') ? nil : size.to_i referer = m['referer'] referer = (referer == '-') ? nil : referer agent = m['agent'] agent = (agent == '-') ? nil : agent record = { "host" => host, "user" => user, "method" => method, "path" => path, "code" => code, "size" => size, "referer" => referer, "agent" => agent, } record["time"] = m['time'] if @keep_time_key yield time, record end
patterns()
click to toggle source
# File lib/fluent/plugin/parser_apache2.rb, line 33 def patterns {'format' => REGEXP, 'time_format' => TIME_FORMAT} end