fluent-plugin-anonymizer 0.2.0 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- data/fluent-plugin-anonymizer.gemspec +2 -1
- data/lib/fluent/plugin/out_anonymizer.rb +3 -12
- metadata +17 -1
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
4
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
6
|
spec.name = "fluent-plugin-anonymizer"
|
7
|
-
spec.version = "0.2.
|
7
|
+
spec.version = "0.2.1"
|
8
8
|
spec.authors = ["Kentaro Yoshida"]
|
9
9
|
spec.email = ["y.ken.studio@gmail.com"]
|
10
10
|
spec.summary = %q{Fluentd filter output plugin to anonymize records with HMAC of MD5/SHA1/SHA256/SHA384/SHA512 algorithms. This data masking plugin protects privacy data such as UserID, Email, Phone number, IPv4/IPv6 address and so on.}
|
@@ -19,4 +19,5 @@ Gem::Specification.new do |spec|
|
|
19
19
|
spec.add_development_dependency "bundler"
|
20
20
|
spec.add_development_dependency "rake"
|
21
21
|
spec.add_runtime_dependency "fluentd"
|
22
|
+
spec.add_runtime_dependency "fluent-mixin-rewrite-tag-name"
|
22
23
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'fluent/mixin/rewrite_tag_name'
|
2
|
+
|
1
3
|
class Fluent::AnonymizerOutput < Fluent::Output
|
2
4
|
Fluent::Plugin.register_output('anonymizer', self)
|
3
5
|
|
@@ -8,7 +10,7 @@ class Fluent::AnonymizerOutput < Fluent::Output
|
|
8
10
|
config_param :ipv6_mask_subnet, :integer, :default => 104
|
9
11
|
|
10
12
|
include Fluent::HandleTagNameMixin
|
11
|
-
|
13
|
+
include Fluent::Mixin::RewriteTagName
|
12
14
|
include Fluent::SetTagKeyMixin
|
13
15
|
config_set_default :include_tag_key, false
|
14
16
|
|
@@ -56,22 +58,11 @@ class Fluent::AnonymizerOutput < Fluent::Output
|
|
56
58
|
end
|
57
59
|
emit_tag = tag.dup
|
58
60
|
filter_record(emit_tag, time, record)
|
59
|
-
emit_tag = rewrite_tag(@tag, emit_tag) if @tag
|
60
61
|
Fluent::Engine.emit(emit_tag, time, record)
|
61
62
|
end
|
62
63
|
chain.next
|
63
64
|
end
|
64
65
|
|
65
|
-
def rewrite_tag(rewritetag, tag)
|
66
|
-
placeholder = {
|
67
|
-
'${tag}' => tag,
|
68
|
-
'__TAG__' => tag
|
69
|
-
}
|
70
|
-
return rewritetag.gsub(/(\${[a-z_]+(\[[0-9]+\])?}|__[A-Z_]+__)/) do
|
71
|
-
$log.warn "anonymizer: unknown placeholder found. :placeholder=>#{$1} :tag=>#{tag} :rewritetag=>#{rewritetag}" unless placeholder.include?($1)
|
72
|
-
placeholder[$1]
|
73
|
-
end
|
74
|
-
end
|
75
66
|
|
76
67
|
def filter_anonymize_record(data, hash_algorithm)
|
77
68
|
begin
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-anonymizer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -59,6 +59,22 @@ dependencies:
|
|
59
59
|
- - ! '>='
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: fluent-mixin-rewrite-tag-name
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
type: :runtime
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
62
78
|
description:
|
63
79
|
email:
|
64
80
|
- y.ken.studio@gmail.com
|