class Fluent::Plugin::S3Output::ZstdCompressor
Public Class Methods
new(opts = {})
click to toggle source
Calls superclass method
Fluent::Plugin::S3Output::Compressor::new
# File lib/fluent/plugin/s3_compressor_zstd.rb, line 11 def initialize(opts = {}) super require 'zstd-ruby' rescue LoadError => e log.error "failed to load zstd-ruby gem. You need to manually install 'zstd-ruby' gem to use 'zstd'.", error: e.message raise Fluent::ConfigError, "failed to load 'zstd-ruby' gem" end
Public Instance Methods
compress(chunk, tmp)
click to toggle source
# File lib/fluent/plugin/s3_compressor_zstd.rb, line 27 def compress(chunk, tmp) compressed = Zstd.compress(chunk.read, level: @compress_config.level) tmp.write(compressed) rescue => e log.warn "zstd compression failed: #{e.message}" raise end
content_type()
click to toggle source
# File lib/fluent/plugin/s3_compressor_zstd.rb, line 23 def content_type 'application/x-zst'.freeze end
ext()
click to toggle source
# File lib/fluent/plugin/s3_compressor_zstd.rb, line 19 def ext 'zst'.freeze end