class Fluent::Plugin::NamedQueriesParser
fluentd parser for bind/named queries format
Constants
- REGEXP
- TIME_FORMAT
Public Class Methods
new(event_time = Fluent::EventTime)
click to toggle source
Calls superclass method
# File lib/fluent/plugin/parser_named_queries.rb, line 44 def initialize(event_time = Fluent::EventTime) super() @mutex = Mutex.new @event_time = event_time end
Public Instance Methods
configure(conf)
click to toggle source
Calls superclass method
# File lib/fluent/plugin/parser_named_queries.rb, line 50 def configure(conf) super @time_parser = time_parser_create(format: TIME_FORMAT) end
parse(text) { |nil, nil| ... }
click to toggle source
# File lib/fluent/plugin/parser_named_queries.rb, line 55 def parse(text) m = REGEXP.match(text) unless m yield nil, nil return end time = m['time'] time = if time @mutex.synchronize { @time_parser.parse(time) } else @event_time.now end record = {} m.names.each do |name| next if name == 'time' record[name] = m[name] if m[name] end record['client_port'] = record['client_port'].to_i if record['client_port'] record.update(Fluent::Plugin::Bind::Utils.parse_flags(record['query_flags'], prefix: 'query_flag_')) yield time, record end