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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8ba36dddb8462493270ebc6b5168e52ae47ccddb
4
- data.tar.gz: 93a4a16e79b74b3259656df8c728c5335f09c40f
3
+ metadata.gz: d4fab5e7e69c6cce1bce0266dfbf9699d0af6185
4
+ data.tar.gz: afca739410951904efaa270017474838413c3efb
5
5
  SHA512:
6
- metadata.gz: 2ca3f2caa9ae8409bc0a3115e081f6ac74493cff06492bd8031983c76c233e3b11334aff82f371549ce3beedf640592a1b7b2df535f5726b7dd3e5bc853ae974
7
- data.tar.gz: de6c798bb18e897efd8c2bb77e21651ce1b47c0250cacb841530213ae8928da9deffaa90ceff31fa6adaf902604feec3ec2131251af963a5553db7c9cb6f0b3d
6
+ metadata.gz: 4e322d7c56b3b689ee4d6ea9ecbda32e4eb5969a839ac71510e2da27818f0eb7302fdca52de992cda7857fa9f0f2d8bfbe14368f6e61f3de4f5513048443b3e5
7
+ data.tar.gz: b2bcb51d60ac51dc1948a72fdb8f62ece2a2e448217880b055e442d0af4401dc15c375558b8c165badc1ec98c7d265c1f8c8c1de1cd805ec8beaeb499a013edc
@@ -0,0 +1,4 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.2.2
4
+ - 2.1.6
data/README.md CHANGED
@@ -1,9 +1,13 @@
1
1
  # fluent-plugin-avro
2
2
 
3
+ [![Build Status](https://travis-ci.org/takebayashi/fluent-plugin-avro.svg)](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
- format avro
19
-
20
- schema_file /path/to/schema.avsc
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
@@ -1 +1,10 @@
1
1
  require "bundler/gem_tasks"
2
+
3
+ require 'rake/testtask'
4
+ desc 'Run test_unit based test'
5
+ Rake::TestTask.new(:test) do |t|
6
+ t.libs << "test"
7
+ t.test_files = Dir["test/**/test_*.rb"].sort
8
+ t.verbose = true
9
+ end
10
+ task :default => :test
@@ -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.2"
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.add_runtime_dependency "fluentd", "~> 0.12.0"
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 TextFormatter
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.2
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: 2015-06-13 00:00:00.000000000 Z
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: fluentd
56
+ name: test-unit
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 0.12.0
62
- type: :runtime
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: 0.12.0
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.4.5
124
+ rubygems_version: 2.5.1
104
125
  signing_key:
105
126
  specification_version: 4
106
127
  summary: Avro formatter plugin for Fluentd