fluent-plugin-confluent-avro 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: a8d5557c7eedf2aec772fa452969ec01feb33dd6f6717e7121a7282dac14dce2
4
+ data.tar.gz: 934398c717b239a01abe397684d4139e34541eb6bec783336a9a0a283c32eba1
5
+ SHA512:
6
+ metadata.gz: 68d9f69e2c178cc66730a4a74e95997f36bd8d141b97819d7dd4894db50ff5a817af64706d9fa1b243e555eb1ec7e98d69bc35a633e131d0548cfd7950d7891d
7
+ data.tar.gz: 5b409840cb343439ae0c055998c9ebc97611c1b6dbf6d7abab36f5a3bcaf1a58e87ca02c3c291589c25124a2403e0cca0181f3a3caad733662de8fa0e2bcffb6
@@ -0,0 +1,26 @@
1
+ require "fluent/plugin/formatter"
2
+ require "avro_turf"
3
+ require "avro_turf/messaging"
4
+
5
+ module Fluent
6
+ module Plugin
7
+ class AvroTurfFormatter < Fluent::Plugin::Formatter
8
+ class AvroTurfVersionImcompatible < StandardError; end
9
+
10
+ Fluent::Plugin.register_formatter("confluent_avro", self)
11
+
12
+ config_param :schema_registry_url, :string, desc: "Schema Registry URL parameter (ex: `http://my-registry:8081/`)"
13
+ config_param :subject, :string, desc: "Subject (ex: my-topic-value)"
14
+ config_param :version, :string, default: "latest", desc: "Version"
15
+
16
+ def configure(conf)
17
+ super
18
+ @avro_turf = AvroTurf::Messaging.new(registry_url: @schema_registry_url)
19
+ end
20
+
21
+ def format(tag, time, record)
22
+ @avro_turf.encode(record, subject: @subject, version: @version)
23
+ end
24
+ end
25
+ end
26
+ end
metadata ADDED
@@ -0,0 +1,106 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: fluent-plugin-confluent-avro
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - mihailrc
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2020-11-24 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '13.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '13.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: fluentd
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: 0.14.10
48
+ - - "<"
49
+ - !ruby/object:Gem::Version
50
+ version: '2'
51
+ type: :runtime
52
+ prerelease: false
53
+ version_requirements: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ version: 0.14.10
58
+ - - "<"
59
+ - !ruby/object:Gem::Version
60
+ version: '2'
61
+ - !ruby/object:Gem::Dependency
62
+ name: avro_turf
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '1.3'
68
+ type: :runtime
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '1.3'
75
+ description: Fluentd formatter plugin that works with Confluent Avro.
76
+ email:
77
+ - mihailrc@gmail.com
78
+ executables: []
79
+ extensions: []
80
+ extra_rdoc_files: []
81
+ files:
82
+ - lib/fluent/plugin/formatter_confluent_avro.rb
83
+ homepage: https://github.com/Ohio-Dept-of-Transportation/fluent-plugin-confluent-avro
84
+ licenses:
85
+ - Nonstandard
86
+ metadata: {}
87
+ post_install_message:
88
+ rdoc_options: []
89
+ require_paths:
90
+ - lib
91
+ required_ruby_version: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: '0'
96
+ required_rubygems_version: !ruby/object:Gem::Requirement
97
+ requirements:
98
+ - - ">="
99
+ - !ruby/object:Gem::Version
100
+ version: '0'
101
+ requirements: []
102
+ rubygems_version: 3.0.3
103
+ signing_key:
104
+ specification_version: 4
105
+ summary: Fluentd formatter plugin that works with Confluent Avro
106
+ test_files: []