class Fluent::Plugin::CsvWithHeaderParser

Public Instance Methods

parse(text) { |time, record| ... } click to toggle source
# File lib/fluent/plugin/parser_csv_with_header.rb, line 28
def parse(text, &block)
  values = CSV.parse_line(text, col_sep: @delimiter)
  if @keys.empty?
    @keys = values
  elsif (@keys - values).empty?
    return
  else
    r = Hash[@keys.zip(values)]
    time, record = convert_values(parse_time(r), r)
    yield time, record
  end
end