class LogStash::Codecs::GzipLines
This codec will read gzip encoded content
Public Class Methods
new(params={})
click to toggle source
Calls superclass method
# File lib/logstash/codecs/gzip_lines.rb, line 25 def initialize(params={}) super(params) @converter = LogStash::Util::Charset.new(@charset) @converter.logger = @logger end
Public Instance Methods
decode(data) { |event("message" => convert)| ... }
click to toggle source
# File lib/logstash/codecs/gzip_lines.rb, line 32 def decode(data) data = StringIO.new(data) if data.kind_of?(String) @decoder = Zlib::GzipReader.new(data) begin @decoder.each_line do |line| yield LogStash::Event.new("message" => @converter.convert(line)) end rescue Zlib::Error, Zlib::GzipFile::Error=> e file = data.is_a?(String) ? data : data.class @logger.error("Gzip codec: We cannot uncompress the gzip file", :filename => file) raise e end end