class Fluent::Plugin::MyScrubFilter
Public Instance Methods
configure(conf)
click to toggle source
Calls superclass method
# File lib/fluent/plugin/filter_myscrub.rb, line 9 def configure(conf) super end
filter(tag, time, record)
click to toggle source
# File lib/fluent/plugin/filter_myscrub.rb, line 42 def filter(tag, time, record) read_record(record) if @@flag == 0 then record else @@flag = 0 nil end end
my_scrub(string)
click to toggle source
# File lib/fluent/plugin/filter_myscrub.rb, line 13 def my_scrub(string) begin string =~ // return string rescue ArgumentError => e raise e unless e.message.index("invalid byte sequence in") == 0 if string.frozen? @@flag = 1 string = string.dup.scrub!("borg") else @@flag = 1 string.scrub!("borg") end retry end end
read_record(record)
click to toggle source
# File lib/fluent/plugin/filter_myscrub.rb, line 30 def read_record(record) record.each do |k,v| if v.instance_of? Hash my_scrub(k) read_record(v) else my_scrub(k) my_scrub(v) end end end