Sha256: 178c2ee50d6304cec4fa754cc33959a57368ca304420cee84baf1bb77b46cc72
Contents?: true
Size: 997 Bytes
Versions: 16
Compression:
Stored size: 997 Bytes
Contents
# frozen_string_literal: true require_relative '../base.rb' module Fusuma module Plugin module Filters # Filter to keep/discard events from input plugin class Filter < Base # Filter input event # @param event [Event] # @return [Event] when keeping event # @return [NilClass] when discarding record def filter(event) return event if event.tag !~ /#{source}/ return event if keep?(event.record) nil end # @abstract override `#keep?` to implement # @param record [String] # @return [True] when keeping record # @return [False] when discarding record def keep?(record) true if record end # Set source for tag from config.yml. # DEFAULT_SOURCE is defined in each Filter plugins. def source @source ||= config_params(:source) || self.class.const_get('DEFAULT_SOURCE') end end end end end
Version data entries
16 entries across 16 versions & 1 rubygems