Sha256: f17b644774216e36d0e456d20a362f08dce5796ebf32520f2ff585d80cd4f6a0
Contents?: true
Size: 970 Bytes
Versions: 5
Compression:
Stored size: 970 Bytes
Contents
# { # "gsub": { # "field": "", # "match": "", # "replace": "" # } # } module Anschel class Filter def gsub conf, stats, log field = conf.delete :field match = Regexp.new conf.delete(:match) replace = conf.delete :replace raise 'Missing required "field" for "gsub" filter' if field.nil? raise 'Missing required "match" for "gsub" filter' if match.nil? raise 'Missing required "replace" for "gsub" filter' if replace.nil? field = field.to_sym stats.create 'filter-gsub' stats.create 'filter-gsub-skipped' log.trace event: 'filter-compiled', kind: 'gsub', \ field: field, match: match, replace: replace lambda do |event| unless event.has_key? field stats.inc 'filter-gsub-skipped' return event end event[field].gsub! match, replace stats.inc 'filter-gsub' filtered event, conf end end end end
Version data entries
5 entries across 5 versions & 1 rubygems