Sha256: 98c6d6ced86f8c2879a16ded9f51fa1e1309589e75c97d7b38516fbdf2519f1f
Contents?: true
Size: 1.53 KB
Versions: 1
Compression:
Stored size: 1.53 KB
Contents
require_relative 'tai64n_parser_mixin' module Fluent class Tai64nParserOutput < Output include Fluent::HandleTagNameMixin include Fluent::Tai64nParserMixin Fluent::Plugin.register_output('tai64n_parser', self) # Define `log` method for v0.10.42 or earlier unless method_defined?(:log) define_method("log") { $log } end # Define `router` method of v0.12 to support v0.10 or earlier unless method_defined?(:router) define_method("router") { Fluent::Engine } end config_param :key, :string, :default => 'tai64n' config_param :output_key, :string, :default => nil def configure(conf) super if ( !remove_tag_prefix && !remove_tag_suffix && !add_tag_prefix && !add_tag_suffix ) raise ConfigError, "out_tai64n_parser: At least one of remove_tag_prefix/remove_tag_suffix/add_tag_prefix/add_tag_suffix is required to be set." end @output_key ||= @key end def start super end def shutdown super end def emit(tag, es, chain) es.each {|time,record| t = tag.dup filter_record(t, time, record) router.emit(t, time, record) } chain.next end def filter_record(tag, time, record) begin record[output_key] = try_replace_tai64n(record[key]) rescue => e log.warn("out_tai64n_parser: #{e.class} #{e.message}") log.warn_backtrace end super(tag, time, record) # HandleTagNameMixin end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fluent-plugin-tai64n_parser-0.2.0 | lib/fluent/plugin/out_tai64n_parser.rb |