logstash-output-elasticsearch 11.22.10-java → 12.0.0-java

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
  SHA256:
3
- metadata.gz: 1ce26f1744954843bcf5738f6ea07c57ecde6a2b5e63e827d9117bffeb8d2857
4
- data.tar.gz: cb9306e7fa13d3aeb1edf089035047f1db95debd5490675ccaabf28771dabbb6
3
+ metadata.gz: 983d99de3a0dcd5e58fb123e01ad8ee4c2396ce15fd565dda439e43c182b32e6
4
+ data.tar.gz: 8733e1a9b256b36e9f08a9be0803ca667817d7fe9f1e4cd1e090fe95882eb245
5
5
  SHA512:
6
- metadata.gz: 7a1b4dfe4d8788794073b9cda092cad34d8a0a3f5a28e9b7ed77de1c4a88dc668c7db3c88279bab9c31d8a33f1ebe60eb70136d3a5a8c5d378cc9f0dd53d7c6b
7
- data.tar.gz: b59c8d820a59cc7ef5c33d434714077568cb6fe20651d027893054f6c6bd0d89f6eeef6989313613a65f23cdab99abbf9594ea2ecd4cb4dc4f5edbed25733d98
6
+ metadata.gz: f9626da6b7d428b17a16b2874a8758e260e84af265636fabea8e35dec0777ecdeae1b662910d2e065eccc4742ef706765d87b6cf475a141544a78347c69953de
7
+ data.tar.gz: 7997cfb3b851130a0504c0907761aba37ea31ec35deb7fc4de19eaf7f1ae00cee9df7b2575d59ace2b08c19ad7710460c534467bb79f7019c3a125478d0de5e2
data/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
+ ## 12.0.0
2
+ - SSL settings that were marked deprecated in version `11.14.0` are now marked obsolete, and will prevent the plugin from starting.
3
+ - These settings are:
4
+ - `cacert`, which should be replaced by `ssl_certificate_authorities`
5
+ - `keystore`, which should be replaced by `ssl_keystore_path`
6
+ - `keystore_password`, which should be replaced by `ssl_keystore_password`
7
+ - `ssl`, which should be replaced by `ssl_enabled`
8
+ - `ssl_certificate_verification`, which should be replaced by `ssl_verification_mode`
9
+ - `truststore`, which should be replaced by `ssl_truststore_path`
10
+ - `truststore_password`, which should be replaced by `ssl_truststore_password`
11
+ - [#1197](https://github.com/logstash-plugins/logstash-output-elasticsearch/pull/1197)
12
+
1
13
  ## 11.22.10
2
- - Add `x-elastic-product-origin` header to Elasticsearch requests [#1194](https://github.com/logstash-plugins/logstash-output-elasticsearch/pull/1194)
14
+ - Add `x-elastic-product-origin` header to Elasticsearch requests [#1195](https://github.com/logstash-plugins/logstash-output-elasticsearch/pull/1195)
3
15
 
4
16
  ## 11.22.9
5
17
  - Vendor ECS template for Elasticsearch 9.x in built gem [#1188](https://github.com/logstash-plugins/logstash-output-elasticsearch/pull/1188)
data/docs/index.asciidoc CHANGED
@@ -325,8 +325,10 @@ When a string value on an event contains one or more byte sequences that are not
325
325
  [id="plugins-{type}s-{plugin}-options"]
326
326
  ==== Elasticsearch Output Configuration Options
327
327
 
328
- This plugin supports the following configuration options plus the
329
- <<plugins-{type}s-{plugin}-common-options>> and the <<plugins-{type}s-{plugin}-deprecated-options>> described later.
328
+ This plugin supports these configuration options plus the <<plugins-{type}s-{plugin}-common-options>> described later.
329
+
330
+ NOTE: As of version 12.0.0 of this plugin, a number of previously deprecated SSL settings have been removed.
331
+ Please check out <<plugins-{type}s-{plugin}-obsolete-options>> for details.
330
332
 
331
333
  [cols="<,<,<",options="header",]
332
334
  |=======================================================================
@@ -441,7 +443,7 @@ For more details on actions, check out the {ref}/docs-bulk.html[Elasticsearch bu
441
443
  * There is no default value for this setting.
442
444
 
443
445
  Authenticate using Elasticsearch API key.
444
- Note that this option also requires SSL/TLS, which can be enabled by supplying a <<plugins-{type}s-{plugin}-cloud_id>>, a list of HTTPS <<plugins-{type}s-{plugin}-hosts>>, or by setting <<plugins-{type}s-{plugin}-ssl,`ssl_enabled => true`>>.
446
+ Note that this option also requires SSL/TLS, which can be enabled by supplying a <<plugins-{type}s-{plugin}-cloud_id>>, a list of HTTPS <<plugins-{type}s-{plugin}-hosts>>, or by setting <<plugins-{type}s-{plugin}-ssl_enabled,`ssl_enabled => true`>>.
445
447
 
446
448
  Format is `id:api_key` where `id` and `api_key` are as returned by the
447
449
  Elasticsearch {ref}/security-api-create-api-key.html[Create API key API].
@@ -1324,98 +1326,24 @@ https://www.elastic.co/blog/elasticsearch-versioning-support[versioning support
1324
1326
  blog] and {ref}/docs-index_.html#_version_types[Version types] in the
1325
1327
  Elasticsearch documentation.
1326
1328
 
1327
- [id="plugins-{type}s-{plugin}-deprecated-options"]
1328
- ==== Elasticsearch Output Deprecated Configuration Options
1329
-
1330
- This plugin supports the following deprecated configurations.
1329
+ [id="plugins-{type}s-{plugin}-obsolete-options"]
1330
+ ==== Elasticsearch Output Obsolete Configuration Options
1331
1331
 
1332
- WARNING: Deprecated options are subject to removal in future releases.
1332
+ WARNING: As of version `12.0.0` of this plugin, some configuration options have been replaced.
1333
+ The plugin will fail to start if it contains any of these obsolete options.
1333
1334
 
1334
- [cols="<,<,<",options="header",]
1335
+ [cols="<,<",options="header",]
1335
1336
  |=======================================================================
1336
- |Setting|Input type|Replaced by
1337
- | <<plugins-{type}s-{plugin}-cacert>> |a valid filesystem path|<<plugins-{type}s-{plugin}-ssl_certificate_authorities>>
1338
- | <<plugins-{type}s-{plugin}-keystore>> |a valid filesystem path|<<plugins-{type}s-{plugin}-ssl_keystore_path>>
1339
- | <<plugins-{type}s-{plugin}-keystore_password>> |<<password,password>>|<<plugins-{type}s-{plugin}-ssl_keystore_password>>
1340
- | <<plugins-{type}s-{plugin}-ssl>> |<<boolean,boolean>>|<<plugins-{type}s-{plugin}-ssl_enabled>>
1341
- | <<plugins-{type}s-{plugin}-ssl_certificate_verification>> |<<boolean,boolean>>|<<plugins-{type}s-{plugin}-ssl_verification_mode>>
1342
- | <<plugins-{type}s-{plugin}-truststore>> |a valid filesystem path|<<plugins-{type}s-{plugin}-ssl_truststore_path>>
1343
- | <<plugins-{type}s-{plugin}-truststore_password>> |<<password,password>>|<<plugins-{type}s-{plugin}-ssl_truststore_password>>
1337
+ |Setting|Replaced by
1338
+ | cacert | <<plugins-{type}s-{plugin}-ssl_certificate_authorities>>
1339
+ | keystore | <<plugins-{type}s-{plugin}-ssl_keystore_path>>
1340
+ | keystore_password | <<plugins-{type}s-{plugin}-ssl_keystore_password>>
1341
+ | ssl | <<plugins-{type}s-{plugin}-ssl_enabled>>
1342
+ | ssl_certificate_verification | <<plugins-{type}s-{plugin}-ssl_verification_mode>>
1343
+ | truststore | <<plugins-{type}s-{plugin}-ssl_truststore_path>>
1344
+ | truststore_password | <<plugins-{type}s-{plugin}-ssl_truststore_password>>
1344
1345
  |=======================================================================
1345
1346
 
1346
-
1347
- [id="plugins-{type}s-{plugin}-cacert"]
1348
- ===== `cacert`
1349
- deprecated[11.14.0, Replaced by <<plugins-{type}s-{plugin}-ssl_certificate_authorities>>]
1350
-
1351
- * Value type is a list of <<path,path>>
1352
- * There is no default value for this setting.
1353
-
1354
- The .cer or .pem file to validate the server's certificate.
1355
-
1356
- [id="plugins-{type}s-{plugin}-keystore"]
1357
- ===== `keystore`
1358
- deprecated[11.14.0, Replaced by <<plugins-{type}s-{plugin}-ssl_keystore_path>>]
1359
-
1360
- * Value type is <<path,path>>
1361
- * There is no default value for this setting.
1362
-
1363
- The keystore used to present a certificate to the server.
1364
- It can be either .jks or .p12
1365
-
1366
- NOTE: You cannot use this setting and <<plugins-{type}s-{plugin}-ssl_certificate>> at the same time.
1367
-
1368
- [id="plugins-{type}s-{plugin}-keystore_password"]
1369
- ===== `keystore_password`
1370
- deprecated[11.14.0, Replaced by <<plugins-{type}s-{plugin}-ssl_keystore_password>>]
1371
-
1372
- * Value type is <<password,password>>
1373
- * There is no default value for this setting.
1374
-
1375
- Set the keystore password
1376
-
1377
- [id="plugins-{type}s-{plugin}-ssl"]
1378
- ===== `ssl`
1379
- deprecated[11.14.0, Replaced by <<plugins-{type}s-{plugin}-ssl_enabled>>]
1380
-
1381
- * Value type is <<boolean,boolean>>
1382
- * There is no default value for this setting.
1383
-
1384
- Enable SSL/TLS secured communication to Elasticsearch cluster.
1385
- Leaving this unspecified will use whatever scheme is specified in the URLs listed in <<plugins-{type}s-{plugin}-hosts>> or extracted from the <<plugins-{type}s-{plugin}-cloud_id>>.
1386
- If no explicit protocol is specified plain HTTP will be used.
1387
-
1388
- [id="plugins-{type}s-{plugin}-ssl_certificate_verification"]
1389
- ===== `ssl_certificate_verification`
1390
- deprecated[11.14.0, Replaced by <<plugins-{type}s-{plugin}-ssl_verification_mode>>]
1391
-
1392
- * Value type is <<boolean,boolean>>
1393
- * Default value is `true`
1394
-
1395
- Option to validate the server's certificate. Disabling this severely compromises security.
1396
- For more information on disabling certificate verification please read
1397
- https://www.cs.utexas.edu/~shmat/shmat_ccs12.pdf
1398
-
1399
- [id="plugins-{type}s-{plugin}-truststore"]
1400
- ===== `truststore`
1401
- deprecated[11.14.0, Replaced by <<plugins-{type}s-{plugin}-ssl_truststore_path>>]
1402
-
1403
- * Value type is <<path,path>>
1404
- * There is no default value for this setting.
1405
-
1406
- The truststore to validate the server's certificate.
1407
- It can be either `.jks` or `.p12`.
1408
- Use either `:truststore` or `:cacert`.
1409
-
1410
- [id="plugins-{type}s-{plugin}-truststore_password"]
1411
- ===== `truststore_password`
1412
- deprecated[11.14.0, Replaced by <<plugins-{type}s-{plugin}-ssl_truststore_password>>]
1413
-
1414
- * Value type is <<password,password>>
1415
- * There is no default value for this setting.
1416
-
1417
- Set the truststore password
1418
-
1419
1347
  [id="plugins-{type}s-{plugin}-common-options"]
1420
1348
  include::{include_path}/{type}.asciidoc[]
1421
1349
 
@@ -275,7 +275,6 @@ class LogStash::Outputs::ElasticSearch < LogStash::Outputs::Base
275
275
  def initialize(*params)
276
276
  super
277
277
  setup_ecs_compatibility_related_defaults
278
- setup_ssl_params!
279
278
  setup_compression_level!
280
279
  end
281
280
 
@@ -694,52 +693,6 @@ class LogStash::Outputs::ElasticSearch < LogStash::Outputs::Base
694
693
  end
695
694
  end
696
695
 
697
- def setup_ssl_params!
698
- @ssl_enabled = normalize_config(:ssl_enabled) do |normalize|
699
- normalize.with_deprecated_alias(:ssl)
700
- end
701
-
702
- @ssl_certificate_authorities = normalize_config(:ssl_certificate_authorities) do |normalize|
703
- normalize.with_deprecated_mapping(:cacert) do |cacert|
704
- [cacert]
705
- end
706
- end
707
-
708
- @ssl_keystore_path = normalize_config(:ssl_keystore_path) do |normalize|
709
- normalize.with_deprecated_alias(:keystore)
710
- end
711
-
712
- @ssl_keystore_password = normalize_config(:ssl_keystore_password) do |normalize|
713
- normalize.with_deprecated_alias(:keystore_password)
714
- end
715
-
716
- @ssl_truststore_path = normalize_config(:ssl_truststore_path) do |normalize|
717
- normalize.with_deprecated_alias(:truststore)
718
- end
719
-
720
- @ssl_truststore_password = normalize_config(:ssl_truststore_password) do |normalize|
721
- normalize.with_deprecated_alias(:truststore_password)
722
- end
723
-
724
- @ssl_verification_mode = normalize_config(:ssl_verification_mode) do |normalize|
725
- normalize.with_deprecated_mapping(:ssl_certificate_verification) do |ssl_certificate_verification|
726
- if ssl_certificate_verification == true
727
- "full"
728
- else
729
- "none"
730
- end
731
- end
732
- end
733
-
734
- params['ssl_enabled'] = @ssl_enabled unless @ssl_enabled.nil?
735
- params['ssl_certificate_authorities'] = @ssl_certificate_authorities unless @ssl_certificate_authorities.nil?
736
- params['ssl_keystore_path'] = @ssl_keystore_path unless @ssl_keystore_path.nil?
737
- params['ssl_keystore_password'] = @ssl_keystore_password unless @ssl_keystore_password.nil?
738
- params['ssl_truststore_path'] = @ssl_truststore_path unless @ssl_truststore_path.nil?
739
- params['ssl_truststore_password'] = @ssl_truststore_password unless @ssl_truststore_password.nil?
740
- params['ssl_verification_mode'] = @ssl_verification_mode unless @ssl_verification_mode.nil?
741
- end
742
-
743
696
  def setup_compression_level!
744
697
  @compression_level = normalize_config(:compression_level) do |normalize|
745
698
  normalize.with_deprecated_mapping(:http_compression) do |http_compression|
@@ -43,40 +43,23 @@ module LogStash; module PluginMixins; module ElasticSearch
43
43
  # urls that already have query strings, the one specified here will be appended.
44
44
  :parameters => { :validate => :hash },
45
45
 
46
- # Enable SSL/TLS secured communication to Elasticsearch cluster. Leaving this unspecified will use whatever scheme
47
- # is specified in the URLs listed in 'hosts'. If no explicit protocol is specified plain HTTP will be used.
48
- # If SSL is explicitly disabled here the plugin will refuse to start if an HTTPS URL is given in 'hosts'
49
- :ssl => { :validate => :boolean, :deprecated => "Set 'ssl_enabled' instead." },
50
-
51
46
  # Enable SSL/TLS secured communication to Elasticsearch cluster. Leaving this unspecified will use whatever scheme
52
47
  # is specified in the URLs listed in 'hosts'. If no explicit protocol is specified plain HTTP will be used.
53
48
  # If SSL is explicitly disabled here the plugin will refuse to start if an HTTPS URL is given in 'hosts'
54
49
  :ssl_enabled => { :validate => :boolean },
55
50
 
56
- # Option to validate the server's certificate. Disabling this severely compromises security.
57
- # For more information on disabling certificate verification please read
58
- # https://www.cs.utexas.edu/~shmat/shmat_ccs12.pdf
59
- :ssl_certificate_verification => { :validate => :boolean, :default => true, :deprecated => "Set 'ssl_verification_mode' instead." },
60
-
61
51
  # Options to verify the server's certificate.
62
52
  # "full": validates that the provided certificate has an issue date that’s within the not_before and not_after dates;
63
53
  # chains to a trusted Certificate Authority (CA); has a hostname or IP address that matches the names within the certificate.
64
54
  # "none": performs no certificate validation. Disabling this severely compromises security (https://www.cs.utexas.edu/~shmat/shmat_ccs12.pdf)
65
55
  :ssl_verification_mode => { :validate => %w[full none], :default => 'full' },
66
56
 
67
- # The .cer or .pem file to validate the server's certificate
68
- :cacert => { :validate => :path, :deprecated => "Set 'ssl_certificate_authorities' instead." },
69
-
70
57
  # The .cer or .pem files to validate the server's certificate
71
58
  :ssl_certificate_authorities => { :validate => :path, :list => true },
72
59
 
73
60
  # One or more hex-encoded SHA256 fingerprints to trust as Certificate Authorities
74
61
  :ca_trusted_fingerprint => LogStash::PluginMixins::CATrustedFingerprintSupport,
75
62
 
76
- # The JKS truststore to validate the server's certificate.
77
- # Use either `:truststore` or `:cacert`
78
- :truststore => { :validate => :path, :deprecated => "Set 'ssl_truststore_path' instead." },
79
-
80
63
  # The JKS truststore to validate the server's certificate.
81
64
  # Use either `:ssl_truststore_path` or `:ssl_certificate_authorities`
82
65
  :ssl_truststore_path => { :validate => :path },
@@ -84,16 +67,9 @@ module LogStash; module PluginMixins; module ElasticSearch
84
67
  # The format of the truststore file. It must be either jks or pkcs12
85
68
  :ssl_truststore_type => { :validate => %w[pkcs12 jks] },
86
69
 
87
- # Set the truststore password
88
- :truststore_password => { :validate => :password, :deprecated => "Use 'ssl_truststore_password' instead." },
89
-
90
70
  # Set the truststore password
91
71
  :ssl_truststore_password => { :validate => :password },
92
72
 
93
- # The keystore used to present a certificate to the server.
94
- # It can be either .jks or .p12
95
- :keystore => { :validate => :path, :deprecated => "Set 'ssl_keystore_path' instead." },
96
-
97
73
  # The keystore used to present a certificate to the server.
98
74
  # It can be either .jks or .p12
99
75
  :ssl_keystore_path => { :validate => :path },
@@ -101,9 +77,6 @@ module LogStash; module PluginMixins; module ElasticSearch
101
77
  # The format of the keystore file. It must be either jks or pkcs12
102
78
  :ssl_keystore_type => { :validate => %w[pkcs12 jks] },
103
79
 
104
- # Set the keystore password
105
- :keystore_password => { :validate => :password, :deprecated => "Set 'ssl_keystore_password' instead." },
106
-
107
80
  # Set the keystore password
108
81
  :ssl_keystore_password => { :validate => :password },
109
82
 
@@ -229,7 +202,17 @@ module LogStash; module PluginMixins; module ElasticSearch
229
202
  :dlq_custom_codes => { :validate => :number, :list => true, :default => [] },
230
203
 
231
204
  # if enabled, failed index name interpolation events go into dead letter queue.
232
- :dlq_on_failed_indexname_interpolation => { :validate => :boolean, :default => true }
205
+ :dlq_on_failed_indexname_interpolation => { :validate => :boolean, :default => true },
206
+
207
+ # Obsolete Settings
208
+ :ssl => { :obsolete => "Set 'ssl_enabled' instead." },
209
+ :ssl_certificate_verification => { :obsolete => "Set 'ssl_verification_mode' instead." },
210
+ :cacert => { :obsolete => "Set 'ssl_certificate_authorities' instead." },
211
+ :truststore => { :obsolete => "Set 'ssl_truststore_path' instead." },
212
+ :keystore => { :obsolete => "Set 'ssl_keystore_path' instead." },
213
+ # Leave :validate to ensure obfuscation of sensitive setting for passwords
214
+ :truststore_password => { :validate => :password, :obsolete => "Use 'ssl_truststore_password' instead." },
215
+ :keystore_password => { :validate => :password, :obsolete => "Set 'ssl_keystore_password' instead." }
233
216
  }.freeze
234
217
 
235
218
  def self.included(base)
@@ -243,3 +226,4 @@ module LogStash; module PluginMixins; module ElasticSearch
243
226
  end
244
227
  end
245
228
  end; end; end
229
+
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'logstash-output-elasticsearch'
3
- s.version = '11.22.10'
3
+ s.version = '12.0.0'
4
4
  s.licenses = ['apache-2.0']
5
5
  s.summary = "Stores logs in Elasticsearch"
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/logstash-plugin install gemname. This gem is not a stand-alone program"
@@ -1125,81 +1125,6 @@ describe LogStash::Outputs::ElasticSearch do
1125
1125
  end
1126
1126
  end
1127
1127
 
1128
- describe "SSL deprecated settings" do
1129
- let(:base_options) { {"ssl" => "true"} }
1130
-
1131
- context "with client certificate" do
1132
- let(:do_register) { true }
1133
- let(:cacert) { Stud::Temporary.file.path }
1134
- let(:options) { base_options.merge(
1135
- "cacert" => cacert,
1136
- "ssl_certificate_verification" => false
1137
- ) }
1138
-
1139
- after :each do
1140
- File.delete(cacert)
1141
- end
1142
-
1143
- it "should map new configs into params" do
1144
- expect(subject.params).to match hash_including(
1145
- "ssl_enabled" => true,
1146
- "ssl_verification_mode" => "none",
1147
- "ssl_certificate_authorities" => [cacert]
1148
- )
1149
- end
1150
-
1151
- it "should set new configs variables" do
1152
- expect(subject.instance_variable_get(:@ssl_enabled)).to eql(true)
1153
- expect(subject.instance_variable_get(:@ssl_verification_mode)).to eql("none")
1154
- expect(subject.instance_variable_get(:@ssl_certificate_authorities)).to eql([cacert])
1155
- end
1156
- end
1157
-
1158
- context "with java stores" do
1159
- let(:do_register) { true }
1160
- let(:keystore) { Stud::Temporary.file.path }
1161
- let(:truststore) { Stud::Temporary.file.path }
1162
- let(:options) { base_options.merge(
1163
- "keystore" => keystore,
1164
- "keystore_password" => "keystore",
1165
- "truststore" => truststore,
1166
- "truststore_password" => "truststore",
1167
- "ssl_certificate_verification" => true
1168
- ) }
1169
-
1170
- let(:spy_http_client_builder!) do
1171
- allow(described_class::HttpClientBuilder).to receive(:build).with(any_args).and_call_original
1172
- allow(described_class::HttpClientBuilder).to receive(:setup_ssl).with(any_args).and_return({})
1173
- end
1174
-
1175
- after :each do
1176
- File.delete(keystore)
1177
- File.delete(truststore)
1178
- end
1179
-
1180
- it "should map new configs into params" do
1181
- expect(subject.params).to match hash_including(
1182
- "ssl_enabled" => true,
1183
- "ssl_keystore_path" => keystore,
1184
- "ssl_truststore_path" => truststore,
1185
- "ssl_verification_mode" => "full"
1186
- )
1187
-
1188
- expect(subject.params["ssl_keystore_password"].value).to eql("keystore")
1189
- expect(subject.params["ssl_truststore_password"].value).to eql("truststore")
1190
- end
1191
-
1192
- it "should set new configs variables" do
1193
- expect(subject.instance_variable_get(:@ssl_enabled)).to eql(true)
1194
- expect(subject.instance_variable_get(:@ssl_keystore_path)).to eql(keystore)
1195
- expect(subject.instance_variable_get(:@ssl_keystore_password).value).to eql("keystore")
1196
- expect(subject.instance_variable_get(:@ssl_truststore_path)).to eql(truststore)
1197
- expect(subject.instance_variable_get(:@ssl_truststore_password).value).to eql("truststore")
1198
- expect(subject.instance_variable_get(:@ssl_verification_mode)).to eql("full")
1199
- end
1200
- end
1201
- end
1202
-
1203
1128
  describe "retry_on_conflict" do
1204
1129
  let(:num_retries) { 123 }
1205
1130
  let(:event) { LogStash::Event.new("myactionfield" => "update", "message" => "blah") }
@@ -195,3 +195,25 @@ describe "SSL options" do
195
195
  end
196
196
  end
197
197
 
198
+ # Move outside the SSL options describe block that has the after hook
199
+ describe "SSL obsolete settings" do
200
+ let(:base_settings) { { "hosts" => "localhost", "pool_max" => 1, "pool_max_per_route" => 1 } }
201
+ [
202
+ {name: 'ssl', replacement: 'ssl_enabled'},
203
+ {name: 'ssl_certificate_verification', replacement: 'ssl_verification_mode'},
204
+ {name: 'cacert', replacement: 'ssl_certificate_authorities'},
205
+ {name: 'truststore', replacement: 'ssl_truststore_path'},
206
+ {name: 'keystore', replacement: 'ssl_keystore_path'},
207
+ {name: 'truststore_password', replacement: 'ssl_truststore_password'},
208
+ {name: 'keystore_password', replacement: 'ssl_keystore_password'}
209
+ ].each do |obsolete_setting|
210
+ context "with option #{obsolete_setting[:name]}" do
211
+ let(:settings) { base_settings.merge(obsolete_setting[:name] => "value") }
212
+
213
+ it "emits an error about the setting being obsolete" do
214
+ error_text = /The setting `#{obsolete_setting[:name]}` in plugin `elasticsearch` is obsolete and is no longer available. (Use|Set) '#{obsolete_setting[:replacement]}' instead/i
215
+ expect { LogStash::Outputs::ElasticSearch.new(settings) }.to raise_error LogStash::ConfigurationError, error_text
216
+ end
217
+ end
218
+ end
219
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-output-elasticsearch
3
3
  version: !ruby/object:Gem::Version
4
- version: 11.22.10
4
+ version: 12.0.0
5
5
  platform: java
6
6
  authors:
7
7
  - Elastic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-12-09 00:00:00.000000000 Z
11
+ date: 2024-12-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement