class Fluent::TextParser::SyslogParser
Constants
- REGEXP
From existence TextParser pattern
- REGEXP_WITH_PRI
From in_syslog default pattern
Public Class Methods
new()
click to toggle source
Calls superclass method
Fluent::Parser.new
# File lib/fluent/parser.rb, line 503 def initialize super @mutex = Mutex.new end
Public Instance Methods
configure(conf)
click to toggle source
Calls superclass method
Fluent::Parser#configure
# File lib/fluent/parser.rb, line 508 def configure(conf) super @regexp = @with_priority ? REGEXP_WITH_PRI : REGEXP @time_parser = TextParser::TimeParser.new(@time_format) end
parse(text) { |nil, nil| ... }
click to toggle source
# File lib/fluent/parser.rb, line 519 def parse(text) m = @regexp.match(text) unless m if block_given? yield nil, nil return else return nil, nil end end time = nil record = {} m.names.each { |name| if value = m[name] case name when "pri" record['pri'] = value.to_i when "time" time = @mutex.synchronize { @time_parser.parse(value.gsub(/ +/, ' ')) } record[name] = value if @keep_time_key else record[name] = value end end } if @estimate_current_event time ||= Engine.now end if block_given? yield time, record else return time, record end end
patterns()
click to toggle source
# File lib/fluent/parser.rb, line 515 def patterns {'format' => @regexp, 'time_format' => @time_format} end