logstash-input-s3 2.0.2 → 2.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0893d52ac528526b6c2f58511ff3157ae9c5fe9e
4
- data.tar.gz: 986391045de0de83269276fa5224606a15984b02
3
+ metadata.gz: 14667d62937095305f003a16bfacb6561fd04dc6
4
+ data.tar.gz: 0841de8c625a8f0fe63fa59b24d899f0c3633de7
5
5
  SHA512:
6
- metadata.gz: 8bdd92283e2103c16bacfa305a6e2b6f1d89dfe70847327d29c6b100db551c2c47cd68b5439232060e07079c715f4b26a828bdaf01fa3271de46d3ab6e901a73
7
- data.tar.gz: 0295e0c05b06aefd71b8c0b53a329ee150aaa2e36cc402269d52307a0dcc3a1c703872a8d45874d4788b58dbf7767be08147e10c6d64fd00209d42add35425d6
6
+ metadata.gz: 26f96a7d9a3d5ea1cb13de57e85a2a454b7aef41fc182b561136cd4e95aef5a57b097e69506c4fa6dc4cf92d0f51b7bec6c10a62cf81d6281bd2590e972848e6
7
+ data.tar.gz: 171d4dd60907d9839dc2fda8ee1ab68400291e415bfcdba9da40f409ed775b17cac193fabe0f706368b0806e8f3a770a91068f6a9cf02086e27eb1c228d1cb66
@@ -1,3 +1,5 @@
1
+ ## 2.0.3
2
+ - Do not raise an exception if the sincedb file is empty, instead return the current time #66
1
3
  ## 2.0.0
2
4
  - Plugins were updated to follow the new shutdown semantic, this mainly allows Logstash to instruct input plugins to terminate gracefully,
3
5
  instead of using Thread.raise on the plugins' threads. Ref: https://github.com/elastic/logstash/pull/3895
data/README.md CHANGED
@@ -1,5 +1,8 @@
1
1
  # Logstash Plugin
2
2
 
3
+ [![Build
4
+ Status](http://build-eu-00.elastic.co/view/LS%20Plugins/view/LS%20Inputs/job/logstash-plugin-input-s3-unit/badge/icon)](http://build-eu-00.elastic.co/view/LS%20Plugins/view/LS%20Inputs/job/logstash-plugin-input-s3-unit/)
5
+
3
6
  This is a plugin for [Logstash](https://github.com/elastic/logstash).
4
7
 
5
8
  It is fully free and fully open source. The license is Apache 2.0, meaning you are pretty much free to use it however you want in whatever way.
@@ -410,11 +410,12 @@ class LogStash::Inputs::S3 < LogStash::Inputs::Base
410
410
 
411
411
  def read
412
412
  if ::File.exists?(@sincedb_path)
413
- since = Time.parse(::File.read(@sincedb_path).chomp.strip)
413
+ content = ::File.read(@sincedb_path).chomp.strip
414
+ # If the file was created but we didn't have the time to write to it
415
+ return content.empty? ? Time.new(0) : Time.parse(content)
414
416
  else
415
- since = Time.new(0)
417
+ return Time.new(0)
416
418
  end
417
- return since
418
419
  end
419
420
 
420
421
  def write(since = nil)
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
 
3
3
  s.name = 'logstash-input-s3'
4
- s.version = '2.0.2'
4
+ s.version = '2.0.3'
5
5
  s.licenses = ['Apache License (2.0)']
6
6
  s.summary = "Stream events from files from a S3 bucket."
7
7
  s.description = "This gem is a logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/plugin install gemname. This gem is not a stand-alone program"
@@ -0,0 +1,17 @@
1
+ # encoding: utf-8
2
+ require "logstash/devutils/rspec/spec_helper"
3
+ require "logstash/inputs/s3"
4
+ require "stud/temporary"
5
+ require "fileutils"
6
+
7
+ describe LogStash::Inputs::S3::SinceDB::File do
8
+ let(:file) { Stud::Temporary.file.path }
9
+ subject { LogStash::Inputs::S3::SinceDB::File.new(file) }
10
+ before do
11
+ FileUtils.touch(file)
12
+ end
13
+
14
+ it "doesnt raise an exception if the file is empty" do
15
+ expect { subject.read }.not_to raise_error
16
+ end
17
+ end
metadata CHANGED
@@ -1,17 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-input-s3
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.2
4
+ version: 2.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elastic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-14 00:00:00.000000000 Z
11
+ date: 2015-11-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- requirement: !ruby/object:Gem::Requirement
14
+ name: logstash-core
15
+ version_requirements: !ruby/object:Gem::Requirement
15
16
  requirements:
16
17
  - - '>='
17
18
  - !ruby/object:Gem::Version
@@ -19,10 +20,7 @@ dependencies:
19
20
  - - <
20
21
  - !ruby/object:Gem::Version
21
22
  version: 3.0.0
22
- name: logstash-core
23
- prerelease: false
24
- type: :runtime
25
- version_requirements: !ruby/object:Gem::Requirement
23
+ requirement: !ruby/object:Gem::Requirement
26
24
  requirements:
27
25
  - - '>='
28
26
  - !ruby/object:Gem::Version
@@ -30,112 +28,115 @@ dependencies:
30
28
  - - <
31
29
  - !ruby/object:Gem::Version
32
30
  version: 3.0.0
31
+ prerelease: false
32
+ type: :runtime
33
33
  - !ruby/object:Gem::Dependency
34
+ name: logstash-mixin-aws
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - '>='
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
34
40
  requirement: !ruby/object:Gem::Requirement
35
41
  requirements:
36
42
  - - '>='
37
43
  - !ruby/object:Gem::Version
38
44
  version: '0'
39
- name: logstash-mixin-aws
40
45
  prerelease: false
41
46
  type: :runtime
47
+ - !ruby/object:Gem::Dependency
48
+ name: stud
42
49
  version_requirements: !ruby/object:Gem::Requirement
43
50
  requirements:
44
- - - '>='
51
+ - - ~>
45
52
  - !ruby/object:Gem::Version
46
- version: '0'
47
- - !ruby/object:Gem::Dependency
53
+ version: 0.0.18
48
54
  requirement: !ruby/object:Gem::Requirement
49
55
  requirements:
50
56
  - - ~>
51
57
  - !ruby/object:Gem::Version
52
58
  version: 0.0.18
53
- name: stud
54
59
  prerelease: false
55
60
  type: :runtime
61
+ - !ruby/object:Gem::Dependency
62
+ name: logstash-devutils
56
63
  version_requirements: !ruby/object:Gem::Requirement
57
64
  requirements:
58
- - - ~>
65
+ - - '>='
59
66
  - !ruby/object:Gem::Version
60
- version: 0.0.18
61
- - !ruby/object:Gem::Dependency
67
+ version: '0'
62
68
  requirement: !ruby/object:Gem::Requirement
63
69
  requirements:
64
70
  - - '>='
65
71
  - !ruby/object:Gem::Version
66
72
  version: '0'
67
- name: logstash-devutils
68
73
  prerelease: false
69
74
  type: :development
75
+ - !ruby/object:Gem::Dependency
76
+ name: simplecov
70
77
  version_requirements: !ruby/object:Gem::Requirement
71
78
  requirements:
72
79
  - - '>='
73
80
  - !ruby/object:Gem::Version
74
81
  version: '0'
75
- - !ruby/object:Gem::Dependency
76
82
  requirement: !ruby/object:Gem::Requirement
77
83
  requirements:
78
84
  - - '>='
79
85
  - !ruby/object:Gem::Version
80
86
  version: '0'
81
- name: simplecov
82
87
  prerelease: false
83
88
  type: :development
89
+ - !ruby/object:Gem::Dependency
90
+ name: coveralls
84
91
  version_requirements: !ruby/object:Gem::Requirement
85
92
  requirements:
86
93
  - - '>='
87
94
  - !ruby/object:Gem::Version
88
95
  version: '0'
89
- - !ruby/object:Gem::Dependency
90
96
  requirement: !ruby/object:Gem::Requirement
91
97
  requirements:
92
98
  - - '>='
93
99
  - !ruby/object:Gem::Version
94
100
  version: '0'
95
- name: coveralls
96
101
  prerelease: false
97
102
  type: :development
103
+ - !ruby/object:Gem::Dependency
104
+ name: logstash-codec-json
98
105
  version_requirements: !ruby/object:Gem::Requirement
99
106
  requirements:
100
107
  - - '>='
101
108
  - !ruby/object:Gem::Version
102
109
  version: '0'
103
- - !ruby/object:Gem::Dependency
104
110
  requirement: !ruby/object:Gem::Requirement
105
111
  requirements:
106
112
  - - '>='
107
113
  - !ruby/object:Gem::Version
108
114
  version: '0'
109
- name: logstash-codec-json
110
115
  prerelease: false
111
116
  type: :development
112
- version_requirements: !ruby/object:Gem::Requirement
113
- requirements:
114
- - - '>='
115
- - !ruby/object:Gem::Version
116
- version: '0'
117
117
  description: This gem is a logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/plugin install gemname. This gem is not a stand-alone program
118
118
  email: info@elastic.co
119
119
  executables: []
120
120
  extensions: []
121
121
  extra_rdoc_files: []
122
122
  files:
123
- - CHANGELOG.md
124
- - CONTRIBUTORS
125
- - Gemfile
126
- - LICENSE
127
- - NOTICE.TXT
128
- - README.md
129
123
  - lib/logstash/inputs/s3.rb
130
- - logstash-input-s3.gemspec
131
124
  - spec/fixtures/cloudfront.log
132
125
  - spec/fixtures/compressed.log.gz
133
126
  - spec/fixtures/invalid_utf8.log
134
127
  - spec/fixtures/json.log
135
128
  - spec/fixtures/uncompressed.log
136
129
  - spec/inputs/s3_spec.rb
130
+ - spec/inputs/sincedb_spec.rb
137
131
  - spec/integration/s3_spec.rb
138
132
  - spec/support/helpers.rb
133
+ - logstash-input-s3.gemspec
134
+ - README.md
135
+ - CHANGELOG.md
136
+ - CONTRIBUTORS
137
+ - Gemfile
138
+ - LICENSE
139
+ - NOTICE.TXT
139
140
  homepage: http://www.elastic.co/guide/en/logstash/current/index.html
140
141
  licenses:
141
142
  - Apache License (2.0)
@@ -158,7 +159,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
158
159
  version: '0'
159
160
  requirements: []
160
161
  rubyforge_project:
161
- rubygems_version: 2.4.8
162
+ rubygems_version: 2.1.9
162
163
  signing_key:
163
164
  specification_version: 4
164
165
  summary: Stream events from files from a S3 bucket.
@@ -169,5 +170,6 @@ test_files:
169
170
  - spec/fixtures/json.log
170
171
  - spec/fixtures/uncompressed.log
171
172
  - spec/inputs/s3_spec.rb
173
+ - spec/inputs/sincedb_spec.rb
172
174
  - spec/integration/s3_spec.rb
173
175
  - spec/support/helpers.rb