fluent-plugin-sqs 0.1.1 → 0.2.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.
- data/README.rdoc +6 -6
- data/Rakefile +1 -0
- data/VERSION +1 -1
- data/lib/fluent/plugin/out_sqs.rb +25 -13
- metadata +15 -4
data/README.rdoc
CHANGED
@@ -27,12 +27,12 @@ Store fluent-event as queue message to amazon SQS.
|
|
27
27
|
|
28
28
|
sqs_endpoint {endpointURL}
|
29
29
|
|
30
|
-
###endpoint list###
|
31
|
-
#Tokyo(Default) : sqs.ap-northeast-1.amazonaws.com
|
32
|
-
#Singapore : sqs.ap-southeast-1.amazonaws.com
|
33
|
-
#US-East : sqs.us-east-1.amazonaws.com
|
34
|
-
#US-West : sqs.us-west-1.amazonaws.com
|
35
|
-
#EU-West : sqs.eu-west-1.amazonaws.com
|
30
|
+
### endpoint list ###
|
31
|
+
# Tokyo(Default) : sqs.ap-northeast-1.amazonaws.com
|
32
|
+
# Singapore : sqs.ap-southeast-1.amazonaws.com
|
33
|
+
# US-East : sqs.us-east-1.amazonaws.com
|
34
|
+
# US-West : sqs.us-west-1.amazonaws.com
|
35
|
+
# EU-West : sqs.eu-west-1.amazonaws.com
|
36
36
|
|
37
37
|
</match>
|
38
38
|
|
data/Rakefile
CHANGED
@@ -13,6 +13,7 @@ begin
|
|
13
13
|
gemspec.has_rdoc = false
|
14
14
|
gemspec.require_paths = ["lib"]
|
15
15
|
gemspec.add_dependency "fluentd", "~> 0.10.0"
|
16
|
+
gemspec.add_dependency "aws-sdk", "~> 1.3.2"
|
16
17
|
gemspec.test_files = Dir["test/**/*.rb"]
|
17
18
|
gemspec.files = Dir["lib/**/*", "test/**/*.rb"] + %w[VERSION AUTHORS Rakefile]
|
18
19
|
gemspec.executables = []
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.2.0
|
@@ -2,7 +2,7 @@ module Fluent
|
|
2
2
|
|
3
3
|
require 'aws-sdk'
|
4
4
|
|
5
|
-
class SQSOutput <
|
5
|
+
class SQSOutput < BufferedOutput
|
6
6
|
|
7
7
|
Fluent::Plugin.register_output('sqs', self)
|
8
8
|
|
@@ -16,15 +16,16 @@ module Fluent
|
|
16
16
|
config_param :aws_sec_key, :string
|
17
17
|
config_param :queue_name, :string
|
18
18
|
config_param :sqs_endpoint, :string, :default => 'sqs.ap-northeast-1.amazonaws.com'
|
19
|
-
|
20
|
-
|
19
|
+
config_param :delay_seconds, :integer, :default => 0
|
20
|
+
#config_param :buffer_queue_limit, :integer, :default => 10
|
21
|
+
|
21
22
|
def configure(conf)
|
22
23
|
super
|
23
24
|
end
|
24
25
|
|
25
26
|
def start
|
26
27
|
super
|
27
|
-
|
28
|
+
|
28
29
|
AWS.config(
|
29
30
|
:access_key_id => @aws_key_id,
|
30
31
|
:secret_access_key => @aws_sec_key,
|
@@ -32,21 +33,32 @@ module Fluent
|
|
32
33
|
|
33
34
|
@sqs = AWS::SQS.new
|
34
35
|
@queue = @sqs.queues.create(@queue_name)
|
36
|
+
|
37
|
+
loop do
|
38
|
+
records = [{ :message_body => "abcdefg"},{ :message_body => "12345"}]
|
39
|
+
@queue.batch_send(records)
|
40
|
+
end
|
35
41
|
|
36
42
|
end
|
37
43
|
|
38
44
|
def shutdown
|
39
45
|
super
|
40
46
|
end
|
41
|
-
|
42
|
-
def
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
47
|
+
|
48
|
+
def format(tag, time, record)
|
49
|
+
record.to_msgpack
|
50
|
+
end
|
51
|
+
|
52
|
+
def write(chunk)
|
53
|
+
records = []
|
54
|
+
chunk.msgpack_each {|record| records << { :message_body => record.to_json, :delay_seconds => @delay_seconds } }
|
55
|
+
until records.length <= 0 do
|
56
|
+
begin
|
57
|
+
@queue.batch_send(records.slice!(0..9))
|
58
|
+
rescue => e
|
59
|
+
$stderr.puts e
|
60
|
+
end
|
61
|
+
end
|
49
62
|
end
|
50
|
-
|
51
63
|
end
|
52
64
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-sqs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2012-02-02 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: fluentd
|
16
|
-
requirement: &
|
16
|
+
requirement: &70146417674160 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,7 +21,18 @@ dependencies:
|
|
21
21
|
version: 0.10.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70146417674160
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: aws-sdk
|
27
|
+
requirement: &70146417673600 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ~>
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 1.3.2
|
33
|
+
type: :runtime
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *70146417673600
|
25
36
|
description:
|
26
37
|
email: ixixizko@gmail.com
|
27
38
|
executables: []
|