Class: Fluent::TextParser::Fw1LoggrabberParser

Inherits:
Parser
  • Object
show all
Defined in:
lib/fluent/plugin/parser_fw1_loggrabber.rb

Instance Method Summary collapse

Constructor Details

#initializeFw1LoggrabberParser

This method is called after config_params have read configuration parameter



12
13
14
15
# File 'lib/fluent/plugin/parser_fw1_loggrabber.rb', line 12

def initialize
  super
  @pattern_key_value = /(?<=^|[^\\]\|)([^=\s]+)=((?:[^|]|(?:(?<=\\)\|))+)/
end

Instance Method Details

#configure(conf = {}) ⇒ Object



17
18
19
# File 'lib/fluent/plugin/parser_fw1_loggrabber.rb', line 17

def configure(conf={})
  super
end

#logparse(text) ⇒ Object



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/fluent/plugin/parser_fw1_loggrabber.rb', line 27

def logparse(text)

  return {} if (nil == text)

  record = Hash.new

  begin
    for pair in text.scan(@pattern_key_value) do
      record[pair[0]] = pair[1]
    end
  rescue => e
    log.error e.message
    return {}
  end

  return record
end

#parse(text) {|Engine.now, record| ... } ⇒ Object

Yields:

  • (Engine.now, record)


21
22
23
24
# File 'lib/fluent/plugin/parser_fw1_loggrabber.rb', line 21

def parse(text)
  record = logparse(text)
  yield Engine.now, record
end