logstash-integration-aws 7.1.6-java → 7.1.8-java

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: 163e3851149d6d1e0be9602a1298359cc355f57177bad417429a5c39840ca768
4
- data.tar.gz: deadfc6ba818c8081ad796fc2180e80c189da9842b97e1cace008bb2fab44432
3
+ metadata.gz: 66108a18e73b5e988bded6e5de34f8a9eb914218c6f1d27f7a3be9cf57763396
4
+ data.tar.gz: 11a2a73eaa92dd70459940a6f0ea5067dfd2089e7ab5cf2bd5c5ed903a21fbfd
5
5
  SHA512:
6
- metadata.gz: 21eaa2c5146017e907a18f7e1b1f479ecf708fd6a89fc771c1283a85a919545e02c064d5944ea29ee5d52bb562079816e8365a1063e810e22c5c6ab7a4b6a6b0
7
- data.tar.gz: b65ae6b87d7340c8494877f4be303b83042a93769d99ade69c9d7bc27eced6bf3286fbfd30812cf299495ae0d920e124dbce27153c15bcac313d375bb69aaf6c
6
+ metadata.gz: e3f3b447382601f2437c51acd92772eb0c12d7397d4cd8d4cfb47d664bee6e53a0bf14d76f7434a691526fd9f7c4786c508c45851f5fd057fe8a4802cb3c23d7
7
+ data.tar.gz: 55fc854162afe32be6f17f5393d50154624c411b5b9fcdd1386e42b9c212b86c56f0fe658a9b01f854fa5c101726f0d1bef7ad6534f4593d431e47dd57b5677a
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## 7.1.8
2
+ - adding all supported storage classes for s3 output [#49](https://github.com/logstash-plugins/logstash-integration-aws/pull/49)
3
+
4
+ ## 7.1.7
5
+ - Remove empty temporary dirs at plugin close [#46](https://github.com/logstash-plugins/logstash-integration-aws/pull/46)
6
+
1
7
  ## 7.1.6
2
8
  - Clean up plugin created temporary dirs at startup [#39](https://github.com/logstash-plugins/logstash-integration-aws/pull/39)
3
9
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 7.1.6
1
+ 7.1.8
@@ -107,7 +107,7 @@ This plugin supports the following configuration options plus the <<plugins-{typ
107
107
  | <<plugins-{type}s-{plugin}-signature_version>> |<<string,string>>, one of `["v2", "v4"]`|No
108
108
  | <<plugins-{type}s-{plugin}-size_file>> |<<number,number>>|No
109
109
  | <<plugins-{type}s-{plugin}-ssekms_key_id>> |<<string,string>>|No
110
- | <<plugins-{type}s-{plugin}-storage_class>> |<<string,string>>, one of `["STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA"]`|No
110
+ | <<plugins-{type}s-{plugin}-storage_class>> |<<string,string>>, one of `["STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW", "EXPRESS_ONEZONE"]`|No
111
111
  | <<plugins-{type}s-{plugin}-temporary_directory>> |<<string,string>>|No
112
112
  | <<plugins-{type}s-{plugin}-time_file>> |<<number,number>>|No
113
113
  | <<plugins-{type}s-{plugin}-upload_multipart_threshold>> |<<number,number>>|No
@@ -375,7 +375,7 @@ http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html
375
375
  [id="plugins-{type}s-{plugin}-storage_class"]
376
376
  ===== `storage_class`
377
377
 
378
- * Value can be any of: `STANDARD`, `REDUCED_REDUNDANCY`, `STANDARD_IA`, `ONEZONE_IA`
378
+ * Value can be any of: `STANDARD`, `REDUCED_REDUNDANCY`, `STANDARD_IA`, `ONEZONE_IA`, `INTELLIGENT_TIERING`, `GLACIER`, `DEEP_ARCHIVE`, `OUTPOSTS`, `GLACIER_IR`, `SNOW`, `EXPRESS_ONEZONE`
379
379
  * Default value is `"STANDARD"`
380
380
 
381
381
  Specifies what S3 storage class to use when uploading the file.
@@ -114,7 +114,7 @@ class LogStash::Outputs::S3 < LogStash::Outputs::Base
114
114
 
115
115
  # Set the time, in MINUTES, to close the current sub_time_section of bucket.
116
116
  # If you also define file_size you have a number of files related to the section and the current tag.
117
- # If it's valued 0 and rotation_strategy is 'time' or 'size_and_time' then the plugin reaise a configuration error.
117
+ # If it's valued 0 and rotation_strategy is 'time' or 'size_and_time' then the plugin raises a configuration error.
118
118
  config :time_file, :validate => :number, :default => 15
119
119
 
120
120
  # If `restore => false` is specified and Logstash crashes, the unprocessed files are not sent into the bucket.
@@ -142,7 +142,7 @@ class LogStash::Outputs::S3 < LogStash::Outputs::Base
142
142
  # More information about the different storage classes can be found:
143
143
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
144
144
  # Defaults to STANDARD.
145
- config :storage_class, :validate => ["STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA"], :default => "STANDARD"
145
+ config :storage_class, :validate => ["STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW", "EXPRESS_ONEZONE"], :default => "STANDARD"
146
146
 
147
147
  # Set the directory where logstash will store the tmp files before sending it to S3
148
148
  # default to the current OS temporary directory in linux /tmp/logstash
@@ -186,7 +186,7 @@ class LogStash::Outputs::S3 < LogStash::Outputs::Base
186
186
  config :rotation_strategy, :validate => ["size_and_time", "size", "time"], :default => "size_and_time"
187
187
 
188
188
  # The common use case is to define permission on the root bucket and give Logstash full access to write its logs.
189
- # In some circonstances you need finer grained permission on subfolder, this allow you to disable the check at startup.
189
+ # In some circumstances you need finer grained permission on sub folder, this allow you to disable the check at startup.
190
190
  config :validate_credentials_on_root_bucket, :validate => :boolean, :default => true
191
191
 
192
192
  # The number of times to retry a failed S3 upload.
@@ -272,6 +272,7 @@ class LogStash::Outputs::S3 < LogStash::Outputs::Base
272
272
  # This will block the shutdown until all upload are done or the use force quit.
273
273
  @file_repository.each_files do |file|
274
274
  upload_file(file)
275
+ clean_temporary_file(file) if Dir.exist?(file.temp_path) && file.size == 0
275
276
  end
276
277
 
277
278
  @uploader.stop # wait until all the current upload are complete
@@ -1,4 +1,4 @@
1
1
  # AUTOGENERATED BY THE GRADLE SCRIPT. DO NOT EDIT.
2
2
 
3
3
  require 'jar_dependencies'
4
- require_jar('org.logstash.plugins.integration.aws', 'logstash-integration-aws', '7.1.6')
4
+ require_jar('org.logstash.plugins.integration.aws', 'logstash-integration-aws', '7.1.8')
@@ -122,7 +122,7 @@ describe LogStash::Outputs::S3 do
122
122
 
123
123
  describe "Storage Class" do
124
124
  context "when configured" do
125
- ["STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA"].each do |storage_class|
125
+ ["STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW", "EXPRESS_ONEZONE"].each do |storage_class|
126
126
  it "should return the configured storage class: #{storage_class}" do
127
127
  s3 = described_class.new(options.merge({ "storage_class" => storage_class }))
128
128
  expect(s3.upload_options).to include(:storage_class => storage_class)
@@ -258,4 +258,25 @@ describe LogStash::Outputs::S3 do
258
258
  end
259
259
  end
260
260
 
261
+ context "plugin close" do
262
+ let(:temporary_directory) { Stud::Temporary.pathname }
263
+ let(:options) { super().merge({ 'temporary_directory' => temporary_directory, 'rotation_strategy' => 'time', 'time_file' => 0.01 }) }
264
+
265
+ before do
266
+ allow(subject).to receive(:bucket_resource).and_return(mock_bucket)
267
+ end
268
+
269
+ it "removes empty directory" do
270
+ subject.register
271
+ expect(Dir.exist?(temporary_directory)).to be_truthy
272
+
273
+ subject.multi_receive_encoded(events_and_encoded) # creates a temporary dir
274
+ expect((Dir.entries(temporary_directory) - %w{ . .. }).empty?).to be_falsey
275
+
276
+ subject.instance_variable_get(:@periodic_check).execute
277
+ subject.close
278
+ expect((Dir.entries(temporary_directory) - %w{ . .. }).empty?).to be_truthy
279
+ end
280
+ end
281
+
261
282
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-integration-aws
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.1.6
4
+ version: 7.1.8
5
5
  platform: java
6
6
  authors:
7
7
  - Elastic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-09-12 00:00:00.000000000 Z
11
+ date: 2024-07-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement
@@ -408,7 +408,7 @@ files:
408
408
  - spec/spec_helper.rb
409
409
  - spec/support/helpers.rb
410
410
  - spec/unit/outputs/sqs_spec.rb
411
- - vendor/jar-dependencies/org/logstash/plugins/integration/aws/logstash-integration-aws/7.1.6/logstash-integration-aws-7.1.6.jar
411
+ - vendor/jar-dependencies/org/logstash/plugins/integration/aws/logstash-integration-aws/7.1.8/logstash-integration-aws-7.1.8.jar
412
412
  homepage: http://www.elastic.co/guide/en/logstash/current/index.html
413
413
  licenses:
414
414
  - Apache-2.0