class LogStash::Codecs::Trigger
The “trigger” codec is for reading triggers from a file for later use in trigger-filters.
Public Instance Methods
decode(data) { |event("message" => convert)| ... }
click to toggle source
# File lib/logstash/codecs/trigger.rb, line 41 def decode(data) yield LogStash::Event.new("message" => @converter.convert(data)) end
encode(event)
click to toggle source
# File lib/logstash/codecs/trigger.rb, line 46 def encode(event) if event.include?(@trigger_attribute) event[@trigger_attribute].each do |trigger| dirname = File.dirname(event['path']) basename = File.basename(event['path']) timestamp = org.joda.time.DateTime.new(trigger[:timestamp]) triggerfolder = @trigger_folder_prefix + timestamp.toString(@trigger_folder_format); path = "#{dirname}/#{triggerfolder}/#{basename}" @logger.debug("Path from trigger", :path => path) if @logger.debug? new_event = event.clone new_event["path"] = path @on_event.call(new_event) end end end
register()
click to toggle source
# File lib/logstash/codecs/trigger.rb, line 35 def register @converter = LogStash::Util::Charset.new(@charset) @converter.logger = @logger end