Class: Fluent::Plugin::FilterListFilter

Inherits:
Filter
  • Object
show all
Includes:
IP, Matchers
Defined in:
lib/fluent/plugin/filter_filter_list.rb

Instance Method Summary collapse

Instance Method Details

#configure(conf) ⇒ Object



18
19
20
21
22
# File 'lib/fluent/plugin/filter_filter_list.rb', line 18

def configure(conf)
  super
  patterns = @patterns_file_path.empty? ? [] : File.readlines(@patterns_file_path).map(&:chomp).reject(&:empty?)
  @matcher = (@filter == 'IP') ? IPMatcher.new(patterns) : ACMatcher.new(patterns)
end

#filter(_tag, _time, record) ⇒ Object



24
25
26
27
28
# File 'lib/fluent/plugin/filter_filter_list.rb', line 24

def filter(_tag, _time, record)
  target = record[@key_to_filter]
  return nil if target && @matcher.matches?(target)
  record
end