logstash-input-s3-sns-sqs 2.1.0 → 2.1.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
  SHA256:
3
- metadata.gz: f7484934d1a9826d562d1a1949bef243f398ead37282b5f78a6d274765b891d0
4
- data.tar.gz: c7595e2a337910dabfc862bd0588aa206f0039a1a174512e3aae961536bcb1f2
3
+ metadata.gz: 4f090986d9b42c172402ba4b1b31c60d0ddbce1d76f160cf6ad9fcb02bbcccb9
4
+ data.tar.gz: a281caf8e678835b008e927ac7ca81f3edab6448f1932c8fec2116623e263e8b
5
5
  SHA512:
6
- metadata.gz: 5e48df7a8f5240acfae4e84aa9995130448440279e706f734e1867ed18ce543c003b5ff046b937278b1b8956c93c1432a333b95c7b055bfd0e6b1b504ab555e2
7
- data.tar.gz: 50c0b7bf135e0e347c6045e1b60f749348687a3848829c3a8b767e9caa2695953c0746f504bfc52e3be5f75feb1b61f59d3a2a2182918aedb2af0dd767d16ad0
6
+ metadata.gz: 993b13ece9f6fc0ac31231ea028780a4108e621c3f9e9efd905fb51f54f8aa0760b736138557fc02307ec9feeb78efdade413e9226704e8a876d397acc8f9916
7
+ data.tar.gz: 6d221eb99ace6783e81e89543c84be4693d2de5a8591103ac8b4c5eeb449add26144f54ea77d1798926a9959e1fbfadac58b8170f035edac95d31b525ecf10c4
@@ -1,3 +1,6 @@
1
+ ##2.1.1
2
+ - FEATURE: Enable Multiregion Support for included S3 client.
3
+ - Add region by bucket feature
1
4
  ##2.1.0
2
5
  - FEATURE: Add S3 metadata -> config :include_object_properties
3
6
  - FEATURE: Watch for threads in exception state and restart...
@@ -10,6 +10,7 @@ class S3ClientFactory
10
10
  @aws_options_hash.merge!(@s3_default_options) unless @s3_default_options.empty?
11
11
  @sts_client = Aws::STS::Client.new(region: options[:aws_region])
12
12
  @credentials_by_bucket = options[:s3_credentials_by_bucket]
13
+ @region_by_bucket = options[:s3_region_by_bucket]
13
14
  @logger.debug("Credentials by Bucket", :credentials => @credentials_by_bucket)
14
15
  @default_session_name = options[:s3_role_session_name]
15
16
  @clients_by_bucket = {}
@@ -24,6 +25,9 @@ class S3ClientFactory
24
25
  unless @credentials_by_bucket[bucket_name].nil?
25
26
  options.merge!(credentials: get_s3_auth(@credentials_by_bucket[bucket_name]))
26
27
  end
28
+ unless @region_by_bucket[bucket_name].nil?
29
+ options.merge!(region: @region_by_bucket[bucket_name])
30
+ end
27
31
  @clients_by_bucket[bucket_symbol] = Aws::S3::Client.new(options)
28
32
  @logger.debug("Created a new S3 Client", :bucket_name => bucket_name, :client => @clients_by_bucket[bucket_symbol], :used_options => options)
29
33
  end
@@ -193,6 +193,7 @@ class LogStash::Inputs::S3SNSSQS < LogStash::Inputs::Threadable
193
193
  FileUtils.mkdir_p(@temporary_directory) unless Dir.exist?(@temporary_directory)
194
194
  @id ||= "Unknown" #Use INPUT{ id => name} for thread identifier
195
195
  @credentials_by_bucket = hash_key_is_regex({})
196
+ @region_by_bucket = hash_key_is_regex({})
196
197
  # create the bucket=>folder=>codec lookup from config options
197
198
  @codec_by_folder = hash_key_is_regex({})
198
199
  @type_by_folder = hash_key_is_regex({})
@@ -227,6 +228,9 @@ class LogStash::Inputs::S3SNSSQS < LogStash::Inputs::Threadable
227
228
  if options.key?('credentials')
228
229
  @credentials_by_bucket[bucket] = options['credentials']
229
230
  end
231
+ if options.key?('region')
232
+ @region_by_bucket[bucket] = options['region']
233
+ end
230
234
  if options.key?('folders')
231
235
  # make these hashes do key lookups using regex matching
232
236
  folders = hash_key_is_regex({})
@@ -261,6 +265,7 @@ class LogStash::Inputs::S3SNSSQS < LogStash::Inputs::Threadable
261
265
  aws_region: @region,
262
266
  s3_default_options: @s3_default_options,
263
267
  s3_credentials_by_bucket: @credentials_by_bucket,
268
+ s3_region_by_bucket: @region_by_bucket,
264
269
  s3_role_session_name: @s3_role_session_name
265
270
  }, aws_options_hash)
266
271
  @s3_downloader = S3Downloader.new(@logger, @received_stop, {
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'logstash-input-s3-sns-sqs'
3
- s.version = '2.1.0'
3
+ s.version = '2.1.1'
4
4
  s.licenses = ['Apache-2.0']
5
5
  s.summary = "Get logs from AWS s3 buckets as issued by an object-created event via sns -> sqs."
6
6
  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"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-input-s3-sns-sqs
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0
4
+ version: 2.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christian Herweg
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-01-02 00:00:00.000000000 Z
11
+ date: 2020-03-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement