# File lib/fluent/formatter.rb, line 219 def initialize super require 'csv' end
# File lib/fluent/formatter.rb, line 224 def configure(conf) super @fields = fields.select { |f| !f.empty? } raise ConfigError, "empty value is specified in fields parameter" if @fields.empty? @generate_opts = {col_sep: @delimiter, force_quotes: @force_quotes} end
# File lib/fluent/formatter.rb, line 232 def format(tag, time, record) filter_record(tag, time, record) row = @fields.inject([]) do |memo, key| memo << record[key] memo end line = CSV.generate_line(row, @generate_opts) line.chomp! unless @add_newline line end