class Fluent::CopyExOutput
Attributes
ignore_errors[R]
Public Class Methods
new()
click to toggle source
Calls superclass method
# File lib/fluent/plugin/out_copy_ex/v12.rb, line 9 def initialize super @ignore_errors = [] end
Public Instance Methods
configure(conf)
click to toggle source
Calls superclass method
# File lib/fluent/plugin/out_copy_ex/v12.rb, line 14 def configure(conf) super conf.elements.select {|e| e.name == 'store' }.each {|e| @ignore_errors << (e.arg == "ignore_error") } end
emit(tag, es, chain)
click to toggle source
# File lib/fluent/plugin/out_copy_ex/v12.rb, line 24 def emit(tag, es, chain) unless es.repeatable? m = MultiEventStream.new es.each {|time,record| m.add(time, record) } es = m end # Here, we do not use OutputChain for custom outputs.each.with_index do |output, idx| begin output.emit(tag, @deep_copy ? es.dup : es, NullOutputChain.instance) rescue => e if @ignore_errors[idx] log.error :error_class => e.class, :error => e.message else raise e end end end chain.next end