fluent-plugin-sqs-check-size 0.1.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 +7 -0
- data/AUTHORS +1 -0
- data/README.rdoc +92 -0
- data/Rakefile +12 -0
- data/VERSION +1 -0
- data/lib/fluent/plugin/in_sqs.rb +68 -0
- data/lib/fluent/plugin/out_sqs.rb +72 -0
- data/spec/lib/fluent/plugin/in_sqs_spec.rb +106 -0
- data/spec/spec_helper.rb +25 -0
- metadata +193 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: ece7c9d08385f16b07165fa5eff29ac03ad3cb96
|
4
|
+
data.tar.gz: ab459560bad394c5c842e296761c8abe6abddace
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: f33c92c6f95331ecfe50fea093bbfcc124cccb08fc756f6d539a1c9c78c41151a869921925805cf8a81c70b671f59f55c5a7dabb784b71ed97b4523912148d4c
|
7
|
+
data.tar.gz: ec3e43ef1f58a3a3130733e27c7f1d3cfa2d3bea53a68956ad27c2ea9bd7634a1cf782ec7a5abfb8ac655ddb6b8e2c12ee4e34cba3e030e16d5ed05c6706b9fb
|
data/AUTHORS
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
Yuri Odagiri <ixixizko _at_ gmail.com>
|
data/README.rdoc
ADDED
@@ -0,0 +1,92 @@
|
|
1
|
+
= Amazon SQS output plugin for Fluent
|
2
|
+
|
3
|
+
== Install
|
4
|
+
$ gem install fluent-plugin-sqs
|
5
|
+
|
6
|
+
== Component
|
7
|
+
|
8
|
+
=== SQSOutput
|
9
|
+
|
10
|
+
Store fluent-event as queue message to amazon SQS.
|
11
|
+
|
12
|
+
=== SQSInput
|
13
|
+
|
14
|
+
Read events from from amazon SQS.
|
15
|
+
|
16
|
+
== Configuratin
|
17
|
+
|
18
|
+
=== SQSOutput
|
19
|
+
|
20
|
+
<match sqs.**>
|
21
|
+
|
22
|
+
type sqs
|
23
|
+
|
24
|
+
# following attibutes are required
|
25
|
+
|
26
|
+
queue_name {queue_instance_key}
|
27
|
+
|
28
|
+
# following attibutes are required if you don't use IAM Role nor export credentials to ENV
|
29
|
+
|
30
|
+
aws_key_id {your_aws_key_id}
|
31
|
+
aws_sec_key {your_aws_secret_key}
|
32
|
+
|
33
|
+
# following attibutes are optional
|
34
|
+
|
35
|
+
create_queue {boolean}
|
36
|
+
sqs_endpoint {endpointURL}
|
37
|
+
|
38
|
+
### endpoint list ###
|
39
|
+
# Asia Pacific (Tokyo) [Default] : sqs.ap-northeast-1.amazonaws.com
|
40
|
+
# Asia Pacific (Singapore) : sqs.ap-southeast-1.amazonaws.com
|
41
|
+
# US-East (Virginia) : sqs.us-east-1.amazonaws.com
|
42
|
+
# US-West (Oregon) : sqs.us-west-2.amazonaws.com
|
43
|
+
# US-West (N.California) : sqs.us-west-1.amazonaws.com
|
44
|
+
# EU-West (Ireland) : sqs.eu-west-1.amazonaws.com
|
45
|
+
# South America (São Paulo) : sns.sa-east-1.amazonaws.com
|
46
|
+
|
47
|
+
delay_seconds {delivery_deley_seconds}
|
48
|
+
|
49
|
+
include_tag {boolean}
|
50
|
+
tag_property_name {tag's property name in json}
|
51
|
+
|
52
|
+
|
53
|
+
</match>
|
54
|
+
|
55
|
+
=== SQSInput
|
56
|
+
|
57
|
+
<source>
|
58
|
+
|
59
|
+
type sqs
|
60
|
+
|
61
|
+
# following attibutes are required
|
62
|
+
|
63
|
+
sqs_url {queue_url}
|
64
|
+
|
65
|
+
# following attibutes are required if you don't use IAM Role nor export credentials to ENV
|
66
|
+
|
67
|
+
aws_key_id {your_aws_key_id}
|
68
|
+
aws_sec_key {your_aws_secret_key}
|
69
|
+
|
70
|
+
# following attibutes are optional
|
71
|
+
|
72
|
+
sqs_endpoint {endpointURL}
|
73
|
+
|
74
|
+
### endpoint list ###
|
75
|
+
# Asia Pacific (Tokyo) [Default] : sqs.ap-northeast-1.amazonaws.com
|
76
|
+
# Asia Pacific (Singapore) : sqs.ap-southeast-1.amazonaws.com
|
77
|
+
# US-East (Virginia) : sqs.us-east-1.amazonaws.com
|
78
|
+
# US-West (Oregon) : sqs.us-west-2.amazonaws.com
|
79
|
+
# US-West (N.California) : sqs.us-west-1.amazonaws.com
|
80
|
+
# EU-West (Ireland) : sqs.eu-west-1.amazonaws.com
|
81
|
+
# South America (São Paulo) : sns.sa-east-1.amazonaws.com
|
82
|
+
|
83
|
+
receive_interval {receive_interval_seconds}
|
84
|
+
|
85
|
+
</source>
|
86
|
+
|
87
|
+
== Tool
|
88
|
+
|
89
|
+
== Copyright
|
90
|
+
|
91
|
+
Copyright:: Copyright (c) 2011- Yuri Odagiri
|
92
|
+
License:: Apache License, Version 2.0
|
data/Rakefile
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'rake'
|
2
|
+
require 'rake/testtask'
|
3
|
+
require 'rake/clean'
|
4
|
+
require "bundler/gem_tasks"
|
5
|
+
|
6
|
+
Rake::TestTask.new(:test) do |t|
|
7
|
+
t.test_files = Dir['test/*_test.rb']
|
8
|
+
t.ruby_opts = ['-rubygems'] if defined? Gem
|
9
|
+
t.ruby_opts << '-I.'
|
10
|
+
end
|
11
|
+
|
12
|
+
task :default => [:build]
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
1.6.0
|
@@ -0,0 +1,68 @@
|
|
1
|
+
module Fluent
|
2
|
+
|
3
|
+
require 'aws-sdk'
|
4
|
+
|
5
|
+
class SQSInput < Input
|
6
|
+
Plugin.register_input('sqs', self)
|
7
|
+
|
8
|
+
def initialize
|
9
|
+
super
|
10
|
+
end
|
11
|
+
|
12
|
+
config_param :aws_key_id, :string, :default => nil, :secret => true
|
13
|
+
config_param :aws_sec_key, :string, :default => nil, :secret => true
|
14
|
+
config_param :tag, :string
|
15
|
+
config_param :sqs_endpoint, :string, :default => 'sqs.ap-northeast-1.amazonaws.com'
|
16
|
+
config_param :sqs_url, :string
|
17
|
+
config_param :receive_interval, :time, :default => 1
|
18
|
+
config_param :max_number_of_messages, :integer, :default => 1
|
19
|
+
|
20
|
+
def configure(conf)
|
21
|
+
super
|
22
|
+
|
23
|
+
end
|
24
|
+
|
25
|
+
def start
|
26
|
+
super
|
27
|
+
|
28
|
+
AWS.config(
|
29
|
+
:access_key_id => @aws_key_id,
|
30
|
+
:secret_access_key => @aws_sec_key
|
31
|
+
)
|
32
|
+
|
33
|
+
@queue = AWS::SQS.new(:sqs_endpoint => @sqs_endpoint).queues[@sqs_url]
|
34
|
+
|
35
|
+
@finished = false
|
36
|
+
@thread = Thread.new(&method(:run_periodic))
|
37
|
+
end
|
38
|
+
|
39
|
+
def shutdown
|
40
|
+
super
|
41
|
+
|
42
|
+
@finished = true
|
43
|
+
@thread.join
|
44
|
+
end
|
45
|
+
|
46
|
+
def run_periodic
|
47
|
+
until @finished
|
48
|
+
begin
|
49
|
+
sleep @receive_interval
|
50
|
+
@queue.receive_message(:limit => @max_number_of_messages) do |message|
|
51
|
+
record = {}
|
52
|
+
record['body'] = message.body.to_s
|
53
|
+
record['handle'] = message.handle.to_s
|
54
|
+
record['id'] = message.id.to_s
|
55
|
+
record['md5'] = message.md5.to_s
|
56
|
+
record['url'] = message.queue.url.to_s
|
57
|
+
record['sender_id'] = message.sender_id.to_s
|
58
|
+
|
59
|
+
Engine.emit(@tag, Time.now.to_i, record)
|
60
|
+
end
|
61
|
+
rescue
|
62
|
+
$log.error "failed to emit or receive", :error => $!.to_s, :error_class => $!.class.to_s
|
63
|
+
$log.warn_backtrace $!.backtrace
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
@@ -0,0 +1,72 @@
|
|
1
|
+
module Fluent
|
2
|
+
|
3
|
+
require 'aws-sdk'
|
4
|
+
require 'objspace'
|
5
|
+
|
6
|
+
class SQSOutput < BufferedOutput
|
7
|
+
|
8
|
+
Fluent::Plugin.register_output('sqs', self)
|
9
|
+
|
10
|
+
include SetTagKeyMixin
|
11
|
+
config_set_default :include_tag_key, false
|
12
|
+
|
13
|
+
include SetTimeKeyMixin
|
14
|
+
config_set_default :include_time_key, true
|
15
|
+
|
16
|
+
config_param :aws_key_id, :string, :default => nil, :secret => true
|
17
|
+
config_param :aws_sec_key, :string, :default => nil, :secret => true
|
18
|
+
config_param :queue_name, :string
|
19
|
+
config_param :create_queue, :bool, :default => true
|
20
|
+
config_param :sqs_endpoint, :string, :default => 'sqs.ap-northeast-1.amazonaws.com'
|
21
|
+
config_param :delay_seconds, :integer, :default => 0
|
22
|
+
config_param :include_tag, :bool, :default => true
|
23
|
+
config_param :tag_property_name, :string, :default => '__tag'
|
24
|
+
config_param :max_size, :integer, :default => 256000
|
25
|
+
|
26
|
+
def configure(conf)
|
27
|
+
super
|
28
|
+
end
|
29
|
+
|
30
|
+
def start
|
31
|
+
super
|
32
|
+
|
33
|
+
AWS.config(
|
34
|
+
:access_key_id => @aws_key_id,
|
35
|
+
:secret_access_key => @aws_sec_key)
|
36
|
+
|
37
|
+
@sqs = AWS::SQS.new(
|
38
|
+
:sqs_endpoint => @sqs_endpoint)
|
39
|
+
if @create_queue then
|
40
|
+
@queue = @sqs.queues.create(@queue_name)
|
41
|
+
else
|
42
|
+
@queue = @sqs.queues.named(@queue_name)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
def shutdown
|
47
|
+
super
|
48
|
+
end
|
49
|
+
|
50
|
+
def format(tag, time, record)
|
51
|
+
if @include_tag then
|
52
|
+
record[@tag_property_name] = tag
|
53
|
+
end
|
54
|
+
|
55
|
+
record.to_msgpack
|
56
|
+
end
|
57
|
+
|
58
|
+
def write(chunk)
|
59
|
+
records = []
|
60
|
+
chunk.msgpack_each {|record|
|
61
|
+
if ObjectSpace.memsize_of(record) < @max_size
|
62
|
+
records << { :message_body => Yajl.dump(record), :delay_seconds => @delay_seconds }
|
63
|
+
else
|
64
|
+
log.info "Could not send log to SQS: the size of log exceeded max_size"
|
65
|
+
end
|
66
|
+
}
|
67
|
+
until records.length <= 0 do
|
68
|
+
@queue.batch_send(records.slice!(0..9))
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
@@ -0,0 +1,106 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe do
|
4
|
+
let(:driver) {
|
5
|
+
AWS.stub!
|
6
|
+
Fluent::Test.setup
|
7
|
+
Fluent::Test::InputTestDriver.new(Fluent::SQSInput).configure(config)
|
8
|
+
}
|
9
|
+
let(:instance) {driver.instance}
|
10
|
+
|
11
|
+
describe 'config' do
|
12
|
+
let(:config) {
|
13
|
+
%[
|
14
|
+
aws_key_id AWS_KEY_ID
|
15
|
+
aws_sec_key AWS_SEC_KEY
|
16
|
+
tag TAG
|
17
|
+
sqs_url SQS_URL
|
18
|
+
max_number_of_messages 10
|
19
|
+
]
|
20
|
+
}
|
21
|
+
|
22
|
+
context do
|
23
|
+
subject {instance.aws_key_id}
|
24
|
+
it{should == 'AWS_KEY_ID'}
|
25
|
+
end
|
26
|
+
|
27
|
+
context do
|
28
|
+
subject {instance.aws_sec_key}
|
29
|
+
it{should == 'AWS_SEC_KEY'}
|
30
|
+
end
|
31
|
+
|
32
|
+
context do
|
33
|
+
subject {instance.tag}
|
34
|
+
it{should == 'TAG'}
|
35
|
+
end
|
36
|
+
|
37
|
+
context do
|
38
|
+
subject {instance.sqs_url}
|
39
|
+
it{should == 'SQS_URL'}
|
40
|
+
end
|
41
|
+
|
42
|
+
context do
|
43
|
+
subject {instance.receive_interval}
|
44
|
+
it{should == 1}
|
45
|
+
end
|
46
|
+
|
47
|
+
context do
|
48
|
+
subject {instance.max_number_of_messages}
|
49
|
+
it{should == 10}
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
describe 'emit' do
|
54
|
+
let(:message) do
|
55
|
+
{ 'body' => 'body',
|
56
|
+
'handle' => 'handle',
|
57
|
+
'id' => 'id',
|
58
|
+
'md5' => 'md5',
|
59
|
+
'url' => 'url',
|
60
|
+
'sender_id' => 'sender_id'
|
61
|
+
}
|
62
|
+
end
|
63
|
+
let(:emmits) {
|
64
|
+
allow(Time).to receive(:now).and_return(0)
|
65
|
+
|
66
|
+
class AWS::SQS::Queue
|
67
|
+
def receive_message(opts)
|
68
|
+
yield OpenStruct.new(
|
69
|
+
{ 'body' => 'body',
|
70
|
+
'handle' => 'handle',
|
71
|
+
'id' => 'id',
|
72
|
+
'md5' => 'md5',
|
73
|
+
'queue' => OpenStruct.new(:url => 'url'),
|
74
|
+
'sender_id' => 'sender_id',
|
75
|
+
'sent_at' => 0
|
76
|
+
})
|
77
|
+
end
|
78
|
+
end
|
79
|
+
expect_any_instance_of(AWS::SQS::Queue).to receive(:receive_message).with({:limit => 10}).at_least(:once).and_call_original
|
80
|
+
|
81
|
+
d = driver
|
82
|
+
d.run do
|
83
|
+
sleep 2
|
84
|
+
end
|
85
|
+
|
86
|
+
d.emits
|
87
|
+
}
|
88
|
+
|
89
|
+
context do
|
90
|
+
let(:config) {
|
91
|
+
%[
|
92
|
+
aws_key_id AWS_KEY_ID
|
93
|
+
aws_sec_key AWS_SEC_KEY
|
94
|
+
tag TAG
|
95
|
+
sqs_url SQS_URL
|
96
|
+
max_number_of_messages 10
|
97
|
+
]
|
98
|
+
}
|
99
|
+
|
100
|
+
subject {emmits.first}
|
101
|
+
it{should == ['TAG', 0, message]}
|
102
|
+
end
|
103
|
+
|
104
|
+
end
|
105
|
+
|
106
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
# This file was generated by the `rspec --init` command. Conventionally, all
|
2
|
+
# specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
|
3
|
+
# Require this file using `require "spec_helper"` to ensure that it is only
|
4
|
+
# loaded once.
|
5
|
+
#
|
6
|
+
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
7
|
+
RSpec.configure do |config|
|
8
|
+
config.treat_symbols_as_metadata_keys_with_true_values = true
|
9
|
+
config.run_all_when_everything_filtered = true
|
10
|
+
config.filter_run :focus
|
11
|
+
|
12
|
+
# Run specs in random order to surface order dependencies. If you find an
|
13
|
+
# order dependency and want to debug it, you can fix the order by providing
|
14
|
+
# the seed, which is printed after each run.
|
15
|
+
# --seed 1234
|
16
|
+
config.order = 'random'
|
17
|
+
|
18
|
+
require 'fluent/load'
|
19
|
+
require 'fluent/test'
|
20
|
+
|
21
|
+
require 'fluent/plugin/in_sqs'
|
22
|
+
require 'ostruct'
|
23
|
+
require 'pry'
|
24
|
+
require 'rr'
|
25
|
+
end
|
metadata
ADDED
@@ -0,0 +1,193 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: fluent-plugin-sqs-check-size
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Nao Akechi
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-07-17 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: fluentd
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 0.12.0
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 0.12.0
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: aws-sdk
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ~>
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 1.9.5
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ~>
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 1.9.5
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: yajl-ruby
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ~>
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ~>
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: bundler
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rake
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - '>='
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - '>='
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rspec
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - '>='
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: rr
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - '>='
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - '>='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: pry
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - '>='
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: jeweler
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - '>='
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - '>='
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: test-unit
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - '>='
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: 3.0.0
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - '>='
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: 3.0.0
|
153
|
+
description:
|
154
|
+
email: nao.akechi@gmail.com
|
155
|
+
executables: []
|
156
|
+
extensions: []
|
157
|
+
extra_rdoc_files:
|
158
|
+
- README.rdoc
|
159
|
+
files:
|
160
|
+
- AUTHORS
|
161
|
+
- Rakefile
|
162
|
+
- VERSION
|
163
|
+
- lib/fluent/plugin/in_sqs.rb
|
164
|
+
- lib/fluent/plugin/out_sqs.rb
|
165
|
+
- spec/lib/fluent/plugin/in_sqs_spec.rb
|
166
|
+
- spec/spec_helper.rb
|
167
|
+
- README.rdoc
|
168
|
+
homepage: https://github.com/nakc/fluent-plugin-sqs
|
169
|
+
licenses: []
|
170
|
+
metadata: {}
|
171
|
+
post_install_message:
|
172
|
+
rdoc_options: []
|
173
|
+
require_paths:
|
174
|
+
- lib
|
175
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
176
|
+
requirements:
|
177
|
+
- - '>='
|
178
|
+
- !ruby/object:Gem::Version
|
179
|
+
version: '0'
|
180
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
181
|
+
requirements:
|
182
|
+
- - '>='
|
183
|
+
- !ruby/object:Gem::Version
|
184
|
+
version: '0'
|
185
|
+
requirements: []
|
186
|
+
rubyforge_project:
|
187
|
+
rubygems_version: 2.0.14
|
188
|
+
signing_key:
|
189
|
+
specification_version: 3
|
190
|
+
summary: Amazon SQS input/output plugin for Fluent event collector
|
191
|
+
test_files:
|
192
|
+
- spec/lib/fluent/plugin/in_sqs_spec.rb
|
193
|
+
- spec/spec_helper.rb
|