Sha256: 83579122e3e1d73166beeb9292f888e60882a735d67e4baa6a6519e6a70feb26
Contents?: true
Size: 1.67 KB
Versions: 1
Compression:
Stored size: 1.67 KB
Contents
require 'fluent/mixin/rewrite_tag_name' class Fluent::AnonymizerOutput < Fluent::Output Fluent::Plugin.register_output('anonymizer', self) # To support log_level option since Fluentd v0.10.43 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 :tag, :string, :default => nil, :desc => 'The output tag.' config_param :hash_salt, :string, :default => '', :desc => <<-DESC This salt affects for md5_keys sha1_keys sha256_keys sha384_keys sha512_keys settings. It is recommend to set a hash salt to prevent rainbow table attacks. DESC config_param :ipv4_mask_subnet, :integer, :default => 24, :desc => 'Anonymize ipv4 addresses by subnet mask.' config_param :ipv6_mask_subnet, :integer, :default => 104, :desc => 'Anonymize ipv6 addresses by subnet mask.' include Fluent::HandleTagNameMixin include Fluent::Mixin::RewriteTagName include Fluent::SetTagKeyMixin config_set_default :include_tag_key, false def initialize require 'fluent/plugin/anonymizer' super end def configure(conf) log.warn "out_anonymizer is now deprecated. It will be removed in a future release. Please consider to use filter_anonymizer." super @anonymizer = Fluent::Anonymizer.new(self, conf) end def emit(tag, es, chain) es.each do |time, record| record = @anonymizer.anonymize(record) emit_tag = tag.dup filter_record(emit_tag, time, record) router.emit(emit_tag, time, record) end chain.next end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fluent-plugin-anonymizer-1.0.0 | lib/fluent/plugin/out_anonymizer.rb |