fluent-plugin-kafka-enchanced 0.5.20 → 0.5.21
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/fluent-plugin-kafka.gemspec +1 -1
- data/lib/fluent/plugin/out_kafka.rb +6 -2
- data/lib/fluent/plugin/out_kafka_buffered.rb +5 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b6abfb26816524cb5800d11f235522ba5b27a74d
|
4
|
+
data.tar.gz: bd9d4826389d79c272bc5baae8dbb39aac8154e4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4a4f714935a5175befee60fa5d9804d32855376208cb2aab0ee1ffcbaace8f5dba1f42c5774127b658fe8043ab5125d9d310d8463f1e86b06a5e46ed3f4ffa56
|
7
|
+
data.tar.gz: 72d1a8b424608f755c0b740e816f36478714c9f4cf89732bfcee29b423e9c2a61dff591e12ac65f06941d7bd4de8c742dff95eb26ce45ad3243bb4c7cfe99654
|
data/fluent-plugin-kafka.gemspec
CHANGED
@@ -12,7 +12,7 @@ Gem::Specification.new do |gem|
|
|
12
12
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
13
13
|
gem.name = "fluent-plugin-kafka-enchanced"
|
14
14
|
gem.require_paths = ["lib"]
|
15
|
-
gem.version = '0.5.
|
15
|
+
gem.version = '0.5.21'
|
16
16
|
gem.required_ruby_version = ">= 2.1.0"
|
17
17
|
|
18
18
|
gem.add_dependency "fluentd", [">= 0.10.58", "< 2"]
|
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'fluent/output'
|
2
2
|
require 'fluent/plugin/kafka_plugin_util'
|
3
3
|
require 'pry'
|
4
|
+
require 'digest'
|
4
5
|
|
5
6
|
class Fluent::KafkaOutput < Fluent::Output
|
6
7
|
Fluent::Plugin.register_output('kafka', self)
|
@@ -147,9 +148,11 @@ DESC
|
|
147
148
|
require "avro/builder"
|
148
149
|
Proc.new do |tag, time, record|
|
149
150
|
record = record.select{|key, value| !key.nil? && !key.empty?}.map{|k, v| [k.tr('[]-', '_').delete('$'), v.to_s]}.to_h
|
150
|
-
|
151
|
+
timestamp = Time.new
|
152
|
+
record['enchilada_timestamp'] = timestamp.strftime('%s%3N')
|
153
|
+
record['enchilada_time_with_format'] = timestamp.strftime("%Y-%m-%dT%H:%M:%S.%LZ")
|
151
154
|
fields = record.keys.map{|key| {'name' => key, 'type' => 'string'}}
|
152
|
-
@topic_name = schema_name = "#{tag.to_s.tr('.$:', '_')}_#{
|
155
|
+
@topic_name = schema_name = "#{tag.to_s.tr('.$:', '_')}_#{Digest::MD5.new.hexdigest(fields.to_s)[0..5]}"
|
153
156
|
schema_json = {
|
154
157
|
"type": "record",
|
155
158
|
"name": schema_name,
|
@@ -224,3 +227,4 @@ end
|
|
224
227
|
|
225
228
|
|
226
229
|
|
230
|
+
|
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'thread'
|
2
2
|
require 'fluent/output'
|
3
3
|
require 'fluent/plugin/kafka_plugin_util'
|
4
|
+
require 'digest'
|
4
5
|
|
5
6
|
class Fluent::KafkaOutputBuffered < Fluent::BufferedOutput
|
6
7
|
Fluent::Plugin.register_output('kafka_buffered', self)
|
@@ -200,9 +201,11 @@ DESC
|
|
200
201
|
require "avro/builder"
|
201
202
|
Proc.new do |tag, time, record|
|
202
203
|
record = record.select{|key, value| !key.nil? && !key.empty?}.map{|k, v| [k.tr('[]-', '_').delete('$'), v.to_s]}.to_h
|
203
|
-
|
204
|
+
timestamp = Time.new
|
205
|
+
record['enchilada_timestamp'] = timestamp.strftime('%s%3N')
|
206
|
+
record['enchilada_time_with_format'] = timestamp.strftime("%Y-%m-%dT%H:%M:%S.%LZ")
|
204
207
|
fields = record.keys.map{|key| {'name' => key, 'type' => 'string'}}
|
205
|
-
@topic_name = schema_name = "#{tag.to_s.tr('.$:', '_')}_#{
|
208
|
+
@topic_name = schema_name = "#{tag.to_s.tr('.$:', '_')}_#{Digest::MD5.new.hexdigest(fields.to_s)[0..5]}"
|
206
209
|
schema_json = {
|
207
210
|
"type": "record",
|
208
211
|
"name": schema_name,
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-kafka-enchanced
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.21
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Paschenko Konstantin
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fluentd
|