fluent-plugin-avro 0.0.2 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +4 -0
- data/README.md +9 -4
- data/Rakefile +9 -0
- data/fluent-plugin-avro.gemspec +3 -2
- data/lib/fluent/plugin/formatter_avro.rb +4 -3
- metadata +28 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d4fab5e7e69c6cce1bce0266dfbf9699d0af6185
|
4
|
+
data.tar.gz: afca739410951904efaa270017474838413c3efb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4e322d7c56b3b689ee4d6ea9ecbda32e4eb5969a839ac71510e2da27818f0eb7302fdca52de992cda7857fa9f0f2d8bfbe14368f6e61f3de4f5513048443b3e5
|
7
|
+
data.tar.gz: b2bcb51d60ac51dc1948a72fdb8f62ece2a2e448217880b055e442d0af4401dc15c375558b8c165badc1ec98c7d265c1f8c8c1de1cd805ec8beaeb499a013edc
|
data/.travis.yml
ADDED
data/README.md
CHANGED
@@ -1,9 +1,13 @@
|
|
1
1
|
# fluent-plugin-avro
|
2
2
|
|
3
|
+
[](https://travis-ci.org/takebayashi/fluent-plugin-avro)
|
4
|
+
|
3
5
|
fluent-plugin-avro provides a formatter plugin for Fluentd.
|
4
6
|
|
5
7
|
## Configurations
|
6
8
|
|
9
|
+
Either `schema_file` or `schema_json` is required.
|
10
|
+
|
7
11
|
| Name | Description |
|
8
12
|
| ---- | ----------- |
|
9
13
|
| `schema_file` | filename of Avro schema |
|
@@ -13,11 +17,12 @@ fluent-plugin-avro provides a formatter plugin for Fluentd.
|
|
13
17
|
|
14
18
|
```
|
15
19
|
<match example.avro>
|
16
|
-
type file
|
20
|
+
@type file
|
17
21
|
path /path/to/output
|
18
|
-
|
19
|
-
|
20
|
-
|
22
|
+
<formatter>
|
23
|
+
@type avro
|
24
|
+
schema_file /path/to/schema.avsc
|
25
|
+
</formatter>
|
21
26
|
|
22
27
|
## You can use schema_json instead of schema_file
|
23
28
|
# schema_json {"type":"record","name":"example","namespace":"org.example","fields":[{"name":"message","type":"string"}]}
|
data/Rakefile
CHANGED
data/fluent-plugin-avro.gemspec
CHANGED
@@ -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-avro"
|
7
|
-
spec.version = "0.0
|
7
|
+
spec.version = "1.0.0"
|
8
8
|
spec.authors = ["Shun Takebayashi"]
|
9
9
|
spec.email = ["shun@takebayashi.asia"]
|
10
10
|
|
@@ -20,5 +20,6 @@ Gem::Specification.new do |spec|
|
|
20
20
|
spec.add_dependency "avro"
|
21
21
|
spec.add_development_dependency "bundler", "~> 1.10"
|
22
22
|
spec.add_development_dependency "rake", "~> 10.0"
|
23
|
-
spec.
|
23
|
+
spec.add_development_dependency "test-unit", "~> 3.1"
|
24
|
+
spec.add_runtime_dependency "fluentd", [">= 0.14.0", "< 2"]
|
24
25
|
end
|
@@ -1,7 +1,8 @@
|
|
1
1
|
require 'avro'
|
2
|
+
require 'fluent/plugin/formatter'
|
2
3
|
|
3
4
|
module Fluent
|
4
|
-
module
|
5
|
+
module Plugin
|
5
6
|
class AvroFormatter < Formatter
|
6
7
|
Fluent::Plugin.register_formatter('avro', self)
|
7
8
|
|
@@ -17,13 +18,13 @@ module Fluent
|
|
17
18
|
@schema_json = File.read(@schema_file)
|
18
19
|
end
|
19
20
|
@schema = Avro::Schema.parse(@schema_json)
|
21
|
+
@writer = Avro::IO::DatumWriter.new(@schema)
|
20
22
|
end
|
21
23
|
|
22
24
|
def format(tag, time, record)
|
23
|
-
writer = Avro::IO::DatumWriter.new(@schema)
|
24
25
|
buffer = StringIO.new
|
25
26
|
encoder = Avro::IO::BinaryEncoder.new(buffer)
|
26
|
-
writer.write(record, encoder)
|
27
|
+
@writer.write(record, encoder)
|
27
28
|
buffer.string
|
28
29
|
end
|
29
30
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-avro
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shun Takebayashi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-05-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: avro
|
@@ -53,19 +53,39 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '10.0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: test-unit
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
62
|
-
type: :
|
61
|
+
version: '3.1'
|
62
|
+
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
68
|
+
version: '3.1'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: fluentd
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 0.14.0
|
76
|
+
- - "<"
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
version: '2'
|
79
|
+
type: :runtime
|
80
|
+
prerelease: false
|
81
|
+
version_requirements: !ruby/object:Gem::Requirement
|
82
|
+
requirements:
|
83
|
+
- - ">="
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: 0.14.0
|
86
|
+
- - "<"
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: '2'
|
69
89
|
description: Avro formatter plugin for Fluentd
|
70
90
|
email:
|
71
91
|
- shun@takebayashi.asia
|
@@ -74,6 +94,7 @@ extensions: []
|
|
74
94
|
extra_rdoc_files: []
|
75
95
|
files:
|
76
96
|
- ".gitignore"
|
97
|
+
- ".travis.yml"
|
77
98
|
- Gemfile
|
78
99
|
- LICENSE.txt
|
79
100
|
- README.md
|
@@ -100,7 +121,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
100
121
|
version: '0'
|
101
122
|
requirements: []
|
102
123
|
rubyforge_project:
|
103
|
-
rubygems_version: 2.
|
124
|
+
rubygems_version: 2.5.1
|
104
125
|
signing_key:
|
105
126
|
specification_version: 4
|
106
127
|
summary: Avro formatter plugin for Fluentd
|