fluent-plugin-aws-sqs 1.0.2
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/.gitignore +7 -0
- data/.gitlab-ci.yml +73 -0
- data/Gemfile +4 -0
- data/README.md +0 -0
- data/Rakefile +7 -0
- data/VERSION +1 -0
- data/fluent-plugin-aws-sqs.gemspec +28 -0
- data/lib/fluent/plugin/in_sqs.rb +80 -0
- data/lib/fluent/plugin/version.rb +3 -0
- data/spec/lib/fluent/plugin/in_sqs_spec.rb +120 -0
- data/spec/spec_helper.rb +28 -0
- metadata +142 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 2e0e807c91cfb9c16b261fbf2302ddd2537856f9eacaca6b5a17bea6c451f904
|
4
|
+
data.tar.gz: 702ca145ce473611c73ea372a810e8c35bdbdc319c95d80bc1ae1600bf71c4e9
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: b4f6aa63ee94baac86ac116378e9f795d3bc431234f92e5e989aa197e75dcea8d7ce58dc069016b9c028237fb5f57b93bc552df9e2eb8fab79c5f6cab13fbe18
|
7
|
+
data.tar.gz: 8b51ce8aa459d03962c2fef4ffffd7f31a7788d44a992bb033e99bf0f374c621d479b047504dfe85392c944676cbf51dcda80e6459dbc11905ac0388cdc5d6a2
|
data/.gitignore
ADDED
data/.gitlab-ci.yml
ADDED
@@ -0,0 +1,73 @@
|
|
1
|
+
image: ruby:2.6.3
|
2
|
+
|
3
|
+
# Cache gems in between builds
|
4
|
+
cache:
|
5
|
+
key: ${CI_COMMIT_REF_SLUG}
|
6
|
+
paths:
|
7
|
+
- vendor/ruby
|
8
|
+
|
9
|
+
before_script:
|
10
|
+
- gem install bundler:2.0.2
|
11
|
+
- bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
|
12
|
+
|
13
|
+
stages:
|
14
|
+
- test
|
15
|
+
- release
|
16
|
+
|
17
|
+
variables:
|
18
|
+
DOCKER_TLS_CERTDIR: ""
|
19
|
+
|
20
|
+
unit-test:
|
21
|
+
tags:
|
22
|
+
- dcos-multi-runner
|
23
|
+
stage: test
|
24
|
+
script:
|
25
|
+
- bundle exec rake test
|
26
|
+
except:
|
27
|
+
- tags
|
28
|
+
|
29
|
+
.release: &release
|
30
|
+
tags:
|
31
|
+
- dcos-multi-runner
|
32
|
+
stage: release
|
33
|
+
before_script:
|
34
|
+
- echo "Setup ssh inside the runner.."
|
35
|
+
- git config --global user.email $GITLAB_USER_EMAIL
|
36
|
+
- git config --global user.name $GITLAB_USER_LOGIN
|
37
|
+
- 'which ssh-agent || ( apk --update add openssh-client )'
|
38
|
+
- eval $(ssh-agent -s)
|
39
|
+
- ssh-add <(echo "$SSH_PRIVATE_KEY")
|
40
|
+
- mkdir -p ~/.ssh
|
41
|
+
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
|
42
|
+
- echo "Clone the source code.."
|
43
|
+
- GIT_URL=$(echo $CI_PROJECT_URL | cut -d'/' -f3)
|
44
|
+
- git clone git@$GIT_URL:$CI_PROJECT_PATH.git
|
45
|
+
- cd $CI_PROJECT_NAME
|
46
|
+
- git reset --hard $CI_COMMIT_SHA
|
47
|
+
script:
|
48
|
+
- mkdir -p ~/.gem
|
49
|
+
- 'echo -e "---\n:rubygems_api_key: $GEM_HOST_API_KEY" > ~/.gem/credentials && echo "created gem credentials"'
|
50
|
+
- chmod 0600 ~/.gem/credentials
|
51
|
+
- gem install gem-release
|
52
|
+
- gem bump fluent-plugin-aws-sqs --version $TYPE --file ./lib/fluent/plugin/version.rb --commit --push --tag
|
53
|
+
- gem build fluent-plugin-aws-sqs.gemspec
|
54
|
+
- export VERSION=$(cat ./lib/fluent/plugin/version.rb | grep VERSION | sed -ne 's/[^0-9]*\(\([0-9]\.\)\{0,4\}[0-9][^.]\).*/\1/p' | sed 's/"$//')
|
55
|
+
- gem push fluent-plugin-aws-sqs-$VERSION.gem
|
56
|
+
when: manual
|
57
|
+
only:
|
58
|
+
- master
|
59
|
+
|
60
|
+
release:patch:
|
61
|
+
extends: .release
|
62
|
+
variables:
|
63
|
+
TYPE: patch
|
64
|
+
|
65
|
+
release:minor:
|
66
|
+
extends: .release
|
67
|
+
variables:
|
68
|
+
TYPE: minor
|
69
|
+
|
70
|
+
release:major:
|
71
|
+
extends: .release
|
72
|
+
variables:
|
73
|
+
TYPE: major
|
data/Gemfile
ADDED
data/README.md
ADDED
File without changes
|
data/Rakefile
ADDED
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
1.0.0
|
@@ -0,0 +1,28 @@
|
|
1
|
+
lib = File.expand_path('../lib', __FILE__)
|
2
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
3
|
+
|
4
|
+
require ('./lib/fluent/plugin/version.rb')
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "fluent-plugin-aws-sqs"
|
8
|
+
spec.version = SQS::VERSION
|
9
|
+
|
10
|
+
spec.authors = ["Shai Moria", "Niv Lipetz", "Jacob Goldenberg"]
|
11
|
+
spec.email = ["shai.moria@zooz.com", "niv.lipetz@zooz.com", "jacob.goldenberg@zooz.com"]
|
12
|
+
spec.description = "Fluentd SQS plugin to read data from AWS SQS"
|
13
|
+
spec.summary = "Fluentd SQS plugin to read data from AWS SQS"
|
14
|
+
spec.homepage = "https://github.com/zooz/fluent-plugin-aws-sqs"
|
15
|
+
|
16
|
+
spec.files = `git ls-files`.split($\)
|
17
|
+
spec.require_paths = ["lib"]
|
18
|
+
spec.license = "Apache-2.0"
|
19
|
+
|
20
|
+
spec.required_ruby_version = '>= 2.1'
|
21
|
+
|
22
|
+
spec.add_runtime_dependency "fluentd", ">= 0.14.0"
|
23
|
+
spec.add_runtime_dependency "aws-sdk-sqs", ">= 1.22.0"
|
24
|
+
spec.add_development_dependency "bundler"
|
25
|
+
spec.add_development_dependency "rake", "~> 12.0"
|
26
|
+
spec.add_development_dependency "test-unit", ">= 3.1.0"
|
27
|
+
spec.add_development_dependency "test-unit-rr"
|
28
|
+
end
|
@@ -0,0 +1,80 @@
|
|
1
|
+
require 'fluent/plugin/input'
|
2
|
+
require 'aws-sdk-sqs'
|
3
|
+
|
4
|
+
module Fluent::Plugin
|
5
|
+
class SQSInput < Input
|
6
|
+
Fluent::Plugin.register_input('sqs', self)
|
7
|
+
|
8
|
+
helpers :timer
|
9
|
+
|
10
|
+
config_param :aws_key_id, :string, default: nil, secret: true
|
11
|
+
config_param :aws_sec_key, :string, default: nil, secret: true
|
12
|
+
config_param :tag, :string
|
13
|
+
config_param :region, :string, default: 'ap-northeast-1'
|
14
|
+
config_param :sqs_url, :string, default: nil
|
15
|
+
config_param :receive_interval, :time, default: 0.1
|
16
|
+
config_param :max_number_of_messages, :integer, default: 10
|
17
|
+
config_param :wait_time_seconds, :integer, default: 10
|
18
|
+
config_param :visibility_timeout, :integer, default: nil
|
19
|
+
config_param :delete_message, :bool, default: false
|
20
|
+
config_param :stub_responses, :bool, default: false
|
21
|
+
|
22
|
+
def configure(conf)
|
23
|
+
super
|
24
|
+
|
25
|
+
Aws.config = {
|
26
|
+
access_key_id: @aws_key_id,
|
27
|
+
secret_access_key: @aws_sec_key,
|
28
|
+
region: @region
|
29
|
+
}
|
30
|
+
end
|
31
|
+
|
32
|
+
def start
|
33
|
+
super
|
34
|
+
|
35
|
+
timer_execute(:in_sqs_run_periodic_timer, @receive_interval, &method(:run))
|
36
|
+
end
|
37
|
+
|
38
|
+
def client
|
39
|
+
@client ||= Aws::SQS::Client.new(stub_responses: @stub_responses)
|
40
|
+
end
|
41
|
+
|
42
|
+
def queue
|
43
|
+
@queue ||= Aws::SQS::Resource.new(client: client).queue(@sqs_url)
|
44
|
+
end
|
45
|
+
|
46
|
+
def shutdown
|
47
|
+
super
|
48
|
+
end
|
49
|
+
|
50
|
+
def run
|
51
|
+
queue.receive_messages(
|
52
|
+
max_number_of_messages: @max_number_of_messages,
|
53
|
+
wait_time_seconds: @wait_time_seconds,
|
54
|
+
visibility_timeout: @visibility_timeout
|
55
|
+
).each do |message|
|
56
|
+
record = parse_message(message)
|
57
|
+
|
58
|
+
message.delete if @delete_message
|
59
|
+
|
60
|
+
router.emit(@tag, Fluent::Engine.now, record)
|
61
|
+
end
|
62
|
+
rescue
|
63
|
+
log.error 'failed to emit or receive', error: $ERROR_INFO.to_s, error_class: $ERROR_INFO.class.to_s
|
64
|
+
log.warn_backtrace $ERROR_INFO.backtrace
|
65
|
+
end
|
66
|
+
|
67
|
+
private
|
68
|
+
|
69
|
+
def parse_message(message)
|
70
|
+
{
|
71
|
+
'body' => message.body.to_s,
|
72
|
+
'receipt_handle' => message.receipt_handle.to_s,
|
73
|
+
'message_id' => message.message_id.to_s,
|
74
|
+
'md5_of_body' => message.md5_of_body.to_s,
|
75
|
+
'queue_url' => message.queue_url.to_s,
|
76
|
+
'sender_id' => message.attributes['SenderId'].to_s
|
77
|
+
}
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
@@ -0,0 +1,120 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'fluent/plugin/in_sqs'
|
3
|
+
|
4
|
+
describe Fluent::Plugin::SQSInput do
|
5
|
+
let(:driver) do
|
6
|
+
Fluent::Test.setup
|
7
|
+
Fluent::Test::Driver::Input.new(Fluent::Plugin::SQSInput).configure(config)
|
8
|
+
end
|
9
|
+
subject { driver.instance }
|
10
|
+
|
11
|
+
describe '#configure' do
|
12
|
+
let(:config) do
|
13
|
+
%(
|
14
|
+
aws_key_id AWS_KEY_ID
|
15
|
+
aws_sec_key AWS_SEC_KEY
|
16
|
+
tag TAG
|
17
|
+
region REGION
|
18
|
+
sqs_url http://SQS_URL
|
19
|
+
receive_interval 1
|
20
|
+
max_number_of_messages 10
|
21
|
+
wait_time_seconds 10
|
22
|
+
visibility_timeout 1
|
23
|
+
delete_message true
|
24
|
+
stub_responses true
|
25
|
+
)
|
26
|
+
end
|
27
|
+
|
28
|
+
context 'fluentd input configuration settings' do
|
29
|
+
it { expect(subject.aws_key_id).to eq('AWS_KEY_ID') }
|
30
|
+
it { expect(subject.aws_sec_key).to eq('AWS_SEC_KEY') }
|
31
|
+
it { expect(subject.tag).to eq('TAG') }
|
32
|
+
it { expect(subject.region).to eq('REGION') }
|
33
|
+
it { expect(subject.sqs_url).to eq('http://SQS_URL') }
|
34
|
+
it { expect(subject.receive_interval).to eq(1) }
|
35
|
+
it { expect(subject.max_number_of_messages).to eq(10) }
|
36
|
+
it { expect(subject.wait_time_seconds).to eq(10) }
|
37
|
+
it { expect(subject.visibility_timeout).to eq(1) }
|
38
|
+
it { expect(subject.delete_message).to eq(true) }
|
39
|
+
it { expect(subject.stub_responses).to eq(true) }
|
40
|
+
end
|
41
|
+
|
42
|
+
context 'AWS configuration settings' do
|
43
|
+
subject { Aws.config }
|
44
|
+
|
45
|
+
before { driver.instance }
|
46
|
+
|
47
|
+
it { expect(subject[:access_key_id]).to eq('AWS_KEY_ID') }
|
48
|
+
it { expect(subject[:secret_access_key]).to eq('AWS_SEC_KEY') }
|
49
|
+
it { expect(subject[:region]).to eq('REGION') }
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
describe '#run' do
|
54
|
+
let(:message_attributes) do
|
55
|
+
{
|
56
|
+
body: 'body',
|
57
|
+
receipt_handle: 'receipt_handle',
|
58
|
+
message_id: 'message_id',
|
59
|
+
md5_of_body: 'md5_of_body',
|
60
|
+
queue_url: 'queue_url',
|
61
|
+
attributes: { 'SenderId' => 'sender_id' }
|
62
|
+
}
|
63
|
+
end
|
64
|
+
let(:queue) { double(:queue, receive_messages: true) }
|
65
|
+
let(:message) { double(:message, **message_attributes.merge(delete: nil)) }
|
66
|
+
let(:messages) { [message] }
|
67
|
+
|
68
|
+
context 'with no delete messages param' do
|
69
|
+
let(:config) do
|
70
|
+
%(
|
71
|
+
tag TAG
|
72
|
+
max_number_of_messages 10
|
73
|
+
wait_time_seconds 10
|
74
|
+
visibility_timeout 1
|
75
|
+
delete_message false
|
76
|
+
)
|
77
|
+
end
|
78
|
+
|
79
|
+
before do
|
80
|
+
allow(subject).to receive(:queue) { queue }
|
81
|
+
end
|
82
|
+
|
83
|
+
it 'parse through messages and emit it' do
|
84
|
+
expect(queue).to receive(:receive_messages)
|
85
|
+
.with(max_number_of_messages: 10, wait_time_seconds: 10, visibility_timeout: 1) { messages }
|
86
|
+
expect(subject).to receive(:parse_message).with(message) { message_attributes }
|
87
|
+
expect(message).not_to receive(:delete)
|
88
|
+
expect(subject.router).to receive(:emit).with('TAG', kind_of(Fluent::EventTime), message_attributes)
|
89
|
+
|
90
|
+
subject.run
|
91
|
+
end
|
92
|
+
end
|
93
|
+
|
94
|
+
context 'with no delete messages param' do
|
95
|
+
let(:config) do
|
96
|
+
%(
|
97
|
+
tag TAG
|
98
|
+
max_number_of_messages 10
|
99
|
+
wait_time_seconds 10
|
100
|
+
visibility_timeout 1
|
101
|
+
delete_message true
|
102
|
+
)
|
103
|
+
end
|
104
|
+
|
105
|
+
before do
|
106
|
+
allow(subject).to receive(:queue) { queue }
|
107
|
+
end
|
108
|
+
|
109
|
+
it 'parse through messages and emit it' do
|
110
|
+
expect(queue).to receive(:receive_messages)
|
111
|
+
.with(max_number_of_messages: 10, wait_time_seconds: 10, visibility_timeout: 1) { messages }
|
112
|
+
expect(subject).to receive(:parse_message).with(message) { message_attributes }
|
113
|
+
expect(message).to receive(:delete)
|
114
|
+
expect(subject.router).to receive(:emit).with('TAG', kind_of(Fluent::EventTime), message_attributes)
|
115
|
+
|
116
|
+
subject.run
|
117
|
+
end
|
118
|
+
end
|
119
|
+
end
|
120
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,28 @@
|
|
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.run_all_when_everything_filtered = true
|
9
|
+
config.filter_run :focus
|
10
|
+
|
11
|
+
# Run specs in random order to surface order dependencies. If you find an
|
12
|
+
# order dependency and want to debug it, you can fix the order by providing
|
13
|
+
# the seed, which is printed after each run.
|
14
|
+
# --seed 1234
|
15
|
+
config.order = 'random'
|
16
|
+
|
17
|
+
require 'fluent/load'
|
18
|
+
require 'fluent/test'
|
19
|
+
require 'fluent/test/helpers'
|
20
|
+
require 'fluent/test/driver/output'
|
21
|
+
require 'fluent/test/driver/input'
|
22
|
+
|
23
|
+
require 'ostruct'
|
24
|
+
require 'pry'
|
25
|
+
require 'rr'
|
26
|
+
# prevent Test::Unit's AutoRunner from executing during RSpec's rake task
|
27
|
+
Test::Unit.run = true if defined?(Test::Unit) && Test::Unit.respond_to?(:run=)
|
28
|
+
end
|
metadata
ADDED
@@ -0,0 +1,142 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: fluent-plugin-aws-sqs
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.2
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Shai Moria
|
8
|
+
- Niv Lipetz
|
9
|
+
- Jacob Goldenberg
|
10
|
+
autorequire:
|
11
|
+
bindir: bin
|
12
|
+
cert_chain: []
|
13
|
+
date: 2019-09-19 00:00:00.000000000 Z
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: fluentd
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
requirements:
|
19
|
+
- - ">="
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 0.14.0
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - ">="
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: 0.14.0
|
29
|
+
- !ruby/object:Gem::Dependency
|
30
|
+
name: aws-sdk-sqs
|
31
|
+
requirement: !ruby/object:Gem::Requirement
|
32
|
+
requirements:
|
33
|
+
- - ">="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: 1.22.0
|
36
|
+
type: :runtime
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: 1.22.0
|
43
|
+
- !ruby/object:Gem::Dependency
|
44
|
+
name: bundler
|
45
|
+
requirement: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - ">="
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '0'
|
50
|
+
type: :development
|
51
|
+
prerelease: false
|
52
|
+
version_requirements: !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '0'
|
57
|
+
- !ruby/object:Gem::Dependency
|
58
|
+
name: rake
|
59
|
+
requirement: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - "~>"
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '12.0'
|
64
|
+
type: :development
|
65
|
+
prerelease: false
|
66
|
+
version_requirements: !ruby/object:Gem::Requirement
|
67
|
+
requirements:
|
68
|
+
- - "~>"
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: '12.0'
|
71
|
+
- !ruby/object:Gem::Dependency
|
72
|
+
name: test-unit
|
73
|
+
requirement: !ruby/object:Gem::Requirement
|
74
|
+
requirements:
|
75
|
+
- - ">="
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: 3.1.0
|
78
|
+
type: :development
|
79
|
+
prerelease: false
|
80
|
+
version_requirements: !ruby/object:Gem::Requirement
|
81
|
+
requirements:
|
82
|
+
- - ">="
|
83
|
+
- !ruby/object:Gem::Version
|
84
|
+
version: 3.1.0
|
85
|
+
- !ruby/object:Gem::Dependency
|
86
|
+
name: test-unit-rr
|
87
|
+
requirement: !ruby/object:Gem::Requirement
|
88
|
+
requirements:
|
89
|
+
- - ">="
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: '0'
|
92
|
+
type: :development
|
93
|
+
prerelease: false
|
94
|
+
version_requirements: !ruby/object:Gem::Requirement
|
95
|
+
requirements:
|
96
|
+
- - ">="
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '0'
|
99
|
+
description: Fluentd SQS plugin to read data from AWS SQS
|
100
|
+
email:
|
101
|
+
- shai.moria@zooz.com
|
102
|
+
- niv.lipetz@zooz.com
|
103
|
+
- jacob.goldenberg@zooz.com
|
104
|
+
executables: []
|
105
|
+
extensions: []
|
106
|
+
extra_rdoc_files: []
|
107
|
+
files:
|
108
|
+
- ".gitignore"
|
109
|
+
- ".gitlab-ci.yml"
|
110
|
+
- Gemfile
|
111
|
+
- README.md
|
112
|
+
- Rakefile
|
113
|
+
- VERSION
|
114
|
+
- fluent-plugin-aws-sqs.gemspec
|
115
|
+
- lib/fluent/plugin/in_sqs.rb
|
116
|
+
- lib/fluent/plugin/version.rb
|
117
|
+
- spec/lib/fluent/plugin/in_sqs_spec.rb
|
118
|
+
- spec/spec_helper.rb
|
119
|
+
homepage: https://github.com/zooz/fluent-plugin-aws-sqs
|
120
|
+
licenses:
|
121
|
+
- Apache-2.0
|
122
|
+
metadata: {}
|
123
|
+
post_install_message:
|
124
|
+
rdoc_options: []
|
125
|
+
require_paths:
|
126
|
+
- lib
|
127
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '2.1'
|
132
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
133
|
+
requirements:
|
134
|
+
- - ">="
|
135
|
+
- !ruby/object:Gem::Version
|
136
|
+
version: '0'
|
137
|
+
requirements: []
|
138
|
+
rubygems_version: 3.0.3
|
139
|
+
signing_key:
|
140
|
+
specification_version: 4
|
141
|
+
summary: Fluentd SQS plugin to read data from AWS SQS
|
142
|
+
test_files: []
|