fluent-plugin-s3 0.4.0 → 0.4.1

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: 2a53266d6e18f131684aa46dec457c99ca4978cb
4
- data.tar.gz: ac0d869dc9b8ac27bb9a87672766dcf245e67248
3
+ metadata.gz: 2947d18c7fd9a423b705a20edf99259b3148ac7b
4
+ data.tar.gz: 0e7aa9af1136d1c0fbfceabc16b60d17b115b238
5
5
  SHA512:
6
- metadata.gz: 699badd3905de4fcd736c9456d8028ba56e5fb1d55352093370678405c9320f4a5f3ceac1e781a2d6e562bbd1c4b230cd43d758f83fcfec7d9cc6a33ec8d0f9c
7
- data.tar.gz: de5513f584b237dc4cb6b01f9ec436a61718da69f7afb4a431fd04df0ae708c609b02d2b087a2d829060380562ddd51df45d5a4ca43dced56dd0f44f2133ca66
6
+ metadata.gz: e143162860517f33da9c276639563bd072d2b8b49d7c57d86bb7fd5352bad59550d7aa5e376fe04a7d06a34abe13afecb1c5a15932a2958397c79546d15b392c
7
+ data.tar.gz: e65a3ceeb9f5be37153f78fabf5b406a557c243f3134ede26f9cc219da32e98f7c8e094eb80b2ee73e49c710e6d35c795773426cd7b694a7466f4eec9f61b358
data/ChangeLog CHANGED
@@ -1,3 +1,10 @@
1
+ Release 0.4.1 - 2014/10/16
2
+
3
+ * Add 's3_region' option to specify S3 region
4
+ * Restrict aws-sdk gem dependency version to use v1
5
+ * Fix infinite loop when same object path is generated
6
+
7
+
1
8
  Release 0.4.0 - 2014/06/06
2
9
 
3
10
  * Add 'format' option to change one line format
data/README.rdoc CHANGED
@@ -37,6 +37,8 @@ Simply use RubyGems:
37
37
 
38
38
  [s3_bucket (required)] S3 bucket name.
39
39
 
40
+ [s3_region] s3 region name. For example, US West (Oregon) Region is "us-west-2". The full list of regions are available here. > http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region. We recommend using `s3_region` instead of `s3_endpoint`.
41
+
40
42
  [s3_endpoint] s3 endpoint name. For example, US West (Oregon) Region is "s3-us-west-2.amazonaws.com". The full list of endpoints are available here. > http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
41
43
 
42
44
  [s3_object_key_format] The format of S3 object keys. You can use several built-in variables:
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.0
1
+ 0.4.1
@@ -17,7 +17,7 @@ Gem::Specification.new do |gem|
17
17
  gem.require_paths = ['lib']
18
18
 
19
19
  gem.add_dependency "fluentd", "~> 0.10.49"
20
- gem.add_dependency "aws-sdk", ">= 1.8.2"
20
+ gem.add_dependency "aws-sdk", "~> 1.38"
21
21
  gem.add_dependency "yajl-ruby", "~> 1.0"
22
22
  gem.add_dependency "fluent-mixin-config-placeholders", "~> 0.2.0"
23
23
  gem.add_development_dependency "rake", ">= 0.9.2"
@@ -24,6 +24,7 @@ module Fluent
24
24
  config_param :aws_key_id, :string, :default => nil
25
25
  config_param :aws_sec_key, :string, :default => nil
26
26
  config_param :s3_bucket, :string
27
+ config_param :s3_region, :string, :default => nil
27
28
  config_param :s3_endpoint, :string, :default => nil
28
29
  config_param :s3_object_key_format, :string, :default => "%{path}%{time_slice}_%{index}.%{file_extension}"
29
30
  config_param :store_as, :string, :default => "gzip"
@@ -99,7 +100,8 @@ module Fluent
99
100
  options[:access_key_id] = @aws_key_id
100
101
  options[:secret_access_key] = @aws_sec_key
101
102
  end
102
- options[:s3_endpoint] = @s3_endpoint if @s3_endpoint
103
+ options[:region] = @s3_region if @s3_region
104
+ options[:endpoint] = @s3_endpoint if @s3_endpoint
103
105
  options[:proxy_uri] = @proxy_uri if @proxy_uri
104
106
  options[:use_ssl] = @use_ssl
105
107
 
@@ -116,6 +118,7 @@ module Fluent
116
118
 
117
119
  def write(chunk)
118
120
  i = 0
121
+ previous_path = nil
119
122
 
120
123
  begin
121
124
  path = @path_slicer.call(@path)
@@ -128,7 +131,12 @@ module Fluent
128
131
  s3path = @s3_object_key_format.gsub(%r(%{[^}]+})) { |expr|
129
132
  values_for_s3_object_key[expr[2...expr.size-1]]
130
133
  }
134
+ if (i > 0) && (s3path == previous_path)
135
+ raise "duplicated path is generated. use %{index} in s3_object_key_format: path = #{s3path}"
136
+ end
137
+
131
138
  i += 1
139
+ previous_path = s3path
132
140
  end while @bucket.objects[s3path].exists?
133
141
 
134
142
  tmp = Tempfile.new("s3-")
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-s3
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sadayuki Furuhashi
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-06-06 00:00:00.000000000 Z
12
+ date: 2014-10-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: fluentd
@@ -29,16 +29,16 @@ dependencies:
29
29
  name: aws-sdk
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ">="
32
+ - - "~>"
33
33
  - !ruby/object:Gem::Version
34
- version: 1.8.2
34
+ version: '1.38'
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ">="
39
+ - - "~>"
40
40
  - !ruby/object:Gem::Version
41
- version: 1.8.2
41
+ version: '1.38'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: yajl-ruby
44
44
  requirement: !ruby/object:Gem::Requirement