class LogStash::Codecs::Plain

The “plain” codec is for plain text with no delimiting between events.

This is mainly useful on inputs and outputs that already have a defined framing in their transport protocol (such as zeromq, rabbitmq, redis, etc)

Constants

MESSAGE_FIELD

Public Class Methods

new(*params) click to toggle source
Calls superclass method
# File lib/logstash/codecs/plain.rb, line 34
def initialize(*params)
  super

  @original_field = ecs_select[disabled: nil, v1: '[event][original]']

  @converter = LogStash::Util::Charset.new(@charset)
  @converter.logger = @logger
end

Public Instance Methods

decode(data) { |event| ... } click to toggle source
# File lib/logstash/codecs/plain.rb, line 49
def decode(data)
  message = @converter.convert(data)
  event = event_factory.new_event
  event.set MESSAGE_FIELD, message
  event.set @original_field, message.dup.freeze if @original_field
  yield event
end
encode(event) click to toggle source
# File lib/logstash/codecs/plain.rb, line 57
def encode(event)
  encoded = @format ? event.sprintf(@format) : event.to_s
  @on_event.call(event, encoded)
end
register() click to toggle source
# File lib/logstash/codecs/plain.rb, line 43
def register
  # no-op
end