Class: Fluent::KeyValueParser
- Inherits:
-
Filter
- Object
- Filter
- Fluent::KeyValueParser
- Defined in:
- lib/fluent/plugin/filter_key_value_parser.rb
Instance Method Summary collapse
Instance Method Details
#configure(conf) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/fluent/plugin/filter_key_value_parser.rb', line 21 def configure(conf) super regex = /^\/.+\/$/ if regex.match(@keys_delimiter.to_s) @keys_delimiter = Regexp.new(@keys_delimiter[1..-2]) end if regex.match(@remove_prefix.to_s) @remove_prefix = Regexp.new(@remove_prefix[1..-2]) end if regex.match(@filtered_keys_regex.to_s) @filtered_keys_regex = Regexp.new(@filtered_keys_regex[1..-2]) end @filtered_keys_list = parse_filtered_keys_parameter end |
#filter(tag, time, record) ⇒ Object
41 42 43 44 45 46 47 48 49 50 |
# File 'lib/fluent/plugin/filter_key_value_parser.rb', line 41 def filter(tag, time, record) return if record[@key].nil? keys = extracted_keys(extract_log_line(record[@key])) return if @filter_out_lines_without_keys && keys.empty? record.merge! keys record.tap { |r| r.delete(@key) if @remove_key }.compact end |