Class: Fluent::FlattenHashOutput

Inherits:
Output
  • Object
show all
Includes:
FlattenHashUtil, HandleTagNameMixin
Defined in:
lib/fluent/plugin/out_flatten_hash.rb

Instance Method Summary collapse

Methods included from FlattenHashUtil

#flatten_record

Constructor Details

#initializeFlattenHashOutput

Returns a new instance of FlattenHashOutput.



13
14
15
# File 'lib/fluent/plugin/out_flatten_hash.rb', line 13

def initialize
  super
end

Instance Method Details

#configure(conf) ⇒ Object



17
18
19
20
21
22
23
24
25
26
# File 'lib/fluent/plugin/out_flatten_hash.rb', line 17

def configure(conf)
  super
  if (!@tag &&
      !remove_tag_prefix &&
      !remove_tag_suffix &&
      !add_tag_prefix &&
      !add_tag_suffix )
    raise ConfigError, "out_flatten_hash: No tag parameters are set"
  end
end

#emit(tag, es, chain) ⇒ Object



28
29
30
31
32
33
34
35
36
37
# File 'lib/fluent/plugin/out_flatten_hash.rb', line 28

def emit(tag, es, chain)
  tag = @tag || tag
  es.each do |time, record|
    record = flatten_record(record, [])
    t = tag.dup
    filter_record(t, time, record)
    router.emit(t, time, record)
  end
  chain.next
end