logstash-integration-kafka 12.1.1-java → 12.1.3-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.
Files changed (22) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +6 -0
  3. data/README.md +1 -1
  4. data/lib/logstash-integration-kafka_jars.rb +13 -13
  5. data/logstash-integration-kafka.gemspec +1 -1
  6. data/spec/integration/outputs/kafka_spec.rb +84 -2
  7. data/spec/unit/outputs/kafka_spec.rb +44 -0
  8. data/vendor/jar-dependencies/com/fasterxml/jackson/core/jackson-annotations/2.21/jackson-annotations-2.21.jar +0 -0
  9. data/vendor/jar-dependencies/com/fasterxml/jackson/core/jackson-core/2.21.2/jackson-core-2.21.2.jar +0 -0
  10. data/vendor/jar-dependencies/com/fasterxml/jackson/core/jackson-databind/{2.20.0/jackson-databind-2.20.0.jar → 2.21.2/jackson-databind-2.21.2.jar} +0 -0
  11. data/vendor/jar-dependencies/com/fasterxml/jackson/dataformat/jackson-dataformat-csv/2.21.2/jackson-dataformat-csv-2.21.2.jar +0 -0
  12. data/vendor/jar-dependencies/com/fasterxml/jackson/datatype/jackson-datatype-jdk8/{2.20.0/jackson-datatype-jdk8-2.20.0.jar → 2.21.2/jackson-datatype-jdk8-2.21.2.jar} +0 -0
  13. data/vendor/jar-dependencies/io/confluent/common-utils/{8.2.0/common-utils-8.2.0.jar → 8.2.1/common-utils-8.2.1.jar} +0 -0
  14. data/vendor/jar-dependencies/io/confluent/kafka-avro-serializer/{8.2.0/kafka-avro-serializer-8.2.0.jar → 8.2.1/kafka-avro-serializer-8.2.1.jar} +0 -0
  15. data/vendor/jar-dependencies/io/confluent/kafka-schema-registry-client/{8.2.0/kafka-schema-registry-client-8.2.0.jar → 8.2.1/kafka-schema-registry-client-8.2.1.jar} +0 -0
  16. data/vendor/jar-dependencies/io/confluent/kafka-schema-serializer/{8.2.0/kafka-schema-serializer-8.2.0.jar → 8.2.1/kafka-schema-serializer-8.2.1.jar} +0 -0
  17. data/vendor/jar-dependencies/org/apache/httpcomponents/core5/httpcore5/{5.3.4/httpcore5-5.3.4.jar → 5.3.6/httpcore5-5.3.6.jar} +0 -0
  18. data/vendor/jar-dependencies/org/apache/httpcomponents/core5/httpcore5-h2/{5.3.4/httpcore5-h2-5.3.4.jar → 5.3.6/httpcore5-h2-5.3.6.jar} +0 -0
  19. metadata +14 -14
  20. data/vendor/jar-dependencies/com/fasterxml/jackson/core/jackson-annotations/2.20/jackson-annotations-2.20.jar +0 -0
  21. data/vendor/jar-dependencies/com/fasterxml/jackson/core/jackson-core/2.20.0/jackson-core-2.20.0.jar +0 -0
  22. data/vendor/jar-dependencies/com/fasterxml/jackson/dataformat/jackson-dataformat-csv/2.20.0/jackson-dataformat-csv-2.20.0.jar +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9210f7be0def80b3b89f73361148fec857dcc0fb6b3375b02536a553e6cefdba
4
- data.tar.gz: e0a5f5d701dfe8e5e587d79a7f539dfa72eaf584b8bccd537bf8256b4872df68
3
+ metadata.gz: d771c3fdefad5b3c1ddaa0c833bd3933ec38c3b4882e5c3f1d9c3b9273eb25f4
4
+ data.tar.gz: e33dc41102566fe3957bf44a8f2250300bf1f363d44ebf4f97f6c8f4bd79eb91
5
5
  SHA512:
6
- metadata.gz: 8dfe76b566df21bb2c2eb660ab71daeb9449ecc8d659a2c40c11d89c815888c183ef301c98cd09e1f222fd08ab869bc87c16c6aa67e6c8a65c4c5d9718af48fa
7
- data.tar.gz: d8a05444b24f21d96db399c914315a20274ccc94c0ddcf876c49693dd4586124704393278c01a64840118feda7cf569c7c51cb04099af313c01aee2b48c8d0ff
6
+ metadata.gz: e78dbf7b25fcf1642484241fa3d10c6b1486f659ab94d5ed5b019787c9630035606ccbdae6a329b1cebdce1f91efb1403f3b36fc119c5dbb0b4d2f3239befd11
7
+ data.tar.gz: 9e38c07386ef9eba02f1f22a2fac4e5693b11c28f5faed53ae83b014106e5d79f1581dc4be5f2e20e48474866b279abbebccab7369c3efdd8eb6021cda31206e
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## 12.1.3
2
+ - Upgrades `httpcore5` dependency to v5.3.6 [#262](https://github.com/logstash-plugins/logstash-integration-kafka/pull/262)
3
+
4
+ ## 12.1.2
5
+ - Upgrade `com.fasterxml.jackson` dependencies to 2.21.2 [#254](https://github.com/logstash-plugins/logstash-integration-kafka/pull/254)
6
+
1
7
  ## 12.1.1
2
8
  - Fix `sasl_jaas_config` output configuration [#245](https://github.com/logstash-plugins/logstash-integration-kafka/pull/245)
3
9
 
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Logstash Plugin
2
2
 
3
- [![Travis Build Status](https://travis-ci.com/logstash-plugins/logstash-integration-kafka.svg)](https://travis-ci.com/logstash-plugins/logstash-integration-kafka)
3
+ [![Unit Tests](https://github.com/logstash-plugins/logstash-integration-kafka/actions/workflows/unit-tests.yml/badge.svg)](https://github.com/logstash-plugins/logstash-integration-kafka/actions/workflows/unit-tests.yml)
4
4
 
5
5
  This is a plugin for [Logstash](https://github.com/elastic/logstash).
6
6
 
@@ -1,24 +1,27 @@
1
1
  # AUTOGENERATED BY THE GRADLE SCRIPT. DO NOT EDIT.
2
2
 
3
3
  require 'jar_dependencies'
4
- require_jar('io.confluent', 'kafka-avro-serializer', '8.2.0')
5
- require_jar('org.apache.kafka', 'kafka-clients', '4.2.0')
6
- require_jar('io.confluent', 'kafka-schema-serializer', '8.2.0')
7
- require_jar('io.confluent', 'kafka-schema-registry-client', '8.2.0')
4
+ require_jar('io.confluent', 'kafka-avro-serializer', '8.2.1')
5
+ require_jar('io.confluent', 'kafka-schema-serializer', '8.2.1')
6
+ require_jar('io.confluent', 'kafka-schema-registry-client', '8.2.1')
8
7
  require_jar('org.apache.avro', 'avro', '1.12.1')
8
+ require_jar('com.fasterxml.jackson.dataformat', 'jackson-dataformat-csv', '2.21.2')
9
+ require_jar('com.fasterxml.jackson.datatype', 'jackson-datatype-jdk8', '2.21.2')
10
+ require_jar('com.fasterxml.jackson.core', 'jackson-databind', '2.21.2')
11
+ require_jar('com.fasterxml.jackson.core', 'jackson-core', '2.21.2')
12
+ require_jar('org.apache.kafka', 'kafka-clients', '4.2.0')
13
+ require_jar('org.apache.httpcomponents.client5', 'httpclient5', '5.5')
14
+ require_jar('org.apache.httpcomponents.core5', 'httpcore5-h2', '5.3.6')
15
+ require_jar('org.apache.httpcomponents.core5', 'httpcore5', '5.3.6')
16
+ require_jar('com.fasterxml.jackson.core', 'jackson-annotations', '2.21')
9
17
  require_jar('org.apache.commons', 'commons-compress', '1.28.0')
10
18
  require_jar('com.google.guava', 'guava', '32.0.1-jre')
11
19
  require_jar('io.confluent', 'logredactor', '1.0.17')
12
- require_jar('io.confluent', 'common-utils', '8.2.0')
20
+ require_jar('io.confluent', 'common-utils', '8.2.1')
13
21
  require_jar('com.github.luben', 'zstd-jni', '1.5.6-10')
14
22
  require_jar('at.yawk.lz4', 'lz4-java', '1.10.1')
15
23
  require_jar('org.xerial.snappy', 'snappy-java', '1.1.10.7')
16
- require_jar('org.apache.httpcomponents.client5', 'httpclient5', '5.5')
17
24
  require_jar('org.slf4j', 'slf4j-api', '2.0.17')
18
- require_jar('com.fasterxml.jackson.dataformat', 'jackson-dataformat-csv', '2.20.0')
19
- require_jar('com.fasterxml.jackson.datatype', 'jackson-datatype-jdk8', '2.20.0')
20
- require_jar('com.fasterxml.jackson.core', 'jackson-databind', '2.20.0')
21
- require_jar('com.fasterxml.jackson.core', 'jackson-core', '2.20.0')
22
25
  require_jar('org.yaml', 'snakeyaml', '2.0')
23
26
  require_jar('io.swagger.core.v3', 'swagger-annotations', '2.2.29')
24
27
  require_jar('com.google.guava', 'failureaccess', '1.0.1')
@@ -33,6 +36,3 @@ require_jar('com.eclipsesource.minimal-json', 'minimal-json', '0.9.5')
33
36
  require_jar('commons-codec', 'commons-codec', '1.19.0')
34
37
  require_jar('commons-io', 'commons-io', '2.20.0')
35
38
  require_jar('org.apache.commons', 'commons-lang3', '3.18.0')
36
- require_jar('com.fasterxml.jackson.core', 'jackson-annotations', '2.20')
37
- require_jar('org.apache.httpcomponents.core5', 'httpcore5-h2', '5.3.4')
38
- require_jar('org.apache.httpcomponents.core5', 'httpcore5', '5.3.4')
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'logstash-integration-kafka'
3
- s.version = '12.1.1'
3
+ s.version = ::File.read('version').split("\n").first
4
4
  s.licenses = ['Apache-2.0']
5
5
  s.summary = "Integration with Kafka - input and output plugins"
6
6
  s.description = "This gem is a Logstash plugin required to be installed on top of the Logstash core pipeline "+
@@ -224,9 +224,87 @@ describe "outputs/kafka", :integration => true do
224
224
  it 'loads data' do
225
225
  expect(fetch_messages_from_all_partitions - @messages_offset).to eql num_events
226
226
  end
227
+ end
228
+
229
+ context 'SASL authentication' do
230
+ let(:test_topic) { 'logstash_integration_sasl_output_topic' }
231
+ let(:num_events) { 3 }
232
+
233
+ let(:sasl_config) do
234
+ base_config.merge(
235
+ 'topic_id' => test_topic,
236
+ 'bootstrap_servers' => 'localhost:9094',
237
+ 'security_protocol' => 'SASL_PLAINTEXT'
238
+ )
239
+ end
240
+
241
+ let(:sasl_ssl_config) do
242
+ base_config.merge(
243
+ 'topic_id' => test_topic,
244
+ 'bootstrap_servers' => 'localhost:9095',
245
+ 'security_protocol' => 'SASL_SSL',
246
+ 'ssl_truststore_location' => File.join(Dir.pwd, 'tls_repository/clienttruststore.jks'),
247
+ 'ssl_truststore_password' => 'changeit'
248
+ )
249
+ end
250
+
251
+ shared_examples 'loads data' do
252
+ before :each do
253
+ @messages_offset = fetch_messages_from_all_partitions
254
+ load_kafka_data(producer_config)
255
+ end
256
+
257
+ it 'loads data' do
258
+ expect(fetch_messages_from_all_partitions - @messages_offset).to eql num_events
259
+ end
260
+ end
261
+
262
+ context 'over SASL_PLAINTEXT' do
263
+ context 'with PLAIN mechanism' do
264
+ let(:producer_config) do
265
+ sasl_config.merge(
266
+ 'sasl_mechanism' => 'PLAIN',
267
+ 'sasl_jaas_config' => 'org.apache.kafka.common.security.plain.PlainLoginModule required username="logstash" password="logstash-secret";'
268
+ )
269
+ end
227
270
 
228
- def fetch_messages_from_all_partitions
229
- 3.times.map { |i| fetch_messages(test_topic, partition: i).size }.sum
271
+ include_examples 'loads data'
272
+ end
273
+
274
+ context 'with SCRAM-SHA-256 mechanism' do
275
+ let(:producer_config) do
276
+ sasl_config.merge(
277
+ 'sasl_mechanism' => 'SCRAM-SHA-256',
278
+ 'sasl_jaas_config' => 'org.apache.kafka.common.security.scram.ScramLoginModule required username="logstash" password="logstash-secret";'
279
+ )
280
+ end
281
+
282
+ include_examples 'loads data'
283
+ end
284
+
285
+ context 'with SCRAM-SHA-512 mechanism' do
286
+ let(:producer_config) do
287
+ sasl_config.merge(
288
+ 'sasl_mechanism' => 'SCRAM-SHA-512',
289
+ 'sasl_jaas_config' => 'org.apache.kafka.common.security.scram.ScramLoginModule required username="logstash" password="logstash-secret";'
290
+ )
291
+ end
292
+
293
+ include_examples 'loads data'
294
+ end
295
+ end
296
+
297
+ context 'over SASL_SSL' do
298
+ context 'with PLAIN mechanism' do
299
+ let(:producer_config) do
300
+ sasl_ssl_config.merge(
301
+ 'sasl_mechanism' => 'PLAIN',
302
+ 'sasl_jaas_config' => 'org.apache.kafka.common.security.plain.PlainLoginModule required username="logstash" password="logstash-secret";'
303
+ )
304
+ end
305
+
306
+ include_examples 'loads data'
307
+ end
230
308
  end
231
309
  end
232
310
 
@@ -242,4 +320,8 @@ describe "outputs/kafka", :integration => true do
242
320
  kafka_client.fetch_messages(topic: topic, partition: partition, offset: offset)
243
321
  end
244
322
 
323
+ def fetch_messages_from_all_partitions
324
+ 3.times.map { |i| fetch_messages(test_topic, partition: i).size }.sum
325
+ end
326
+
245
327
  end
@@ -330,5 +330,49 @@ describe "outputs/kafka" do
330
330
  ))
331
331
  subject.register
332
332
  end
333
+
334
+ context 'with sasl_jaas_config' do
335
+ let(:config) {
336
+ simple_kafka_config.merge(
337
+ 'security_protocol' => 'SASL_PLAINTEXT',
338
+ 'sasl_mechanism' => 'PLAIN'
339
+ )
340
+ }
341
+
342
+ shared_examples 'sasl_jaas_config password handling' do
343
+ it "sasl_jaas_config.value returns the original string" do
344
+ subject.register
345
+ expect(subject.sasl_jaas_config.value).to eq(jaas_config_value)
346
+ end
347
+
348
+ it "sasl_jaas_config.inspect does not expose the password" do
349
+ subject.register
350
+ expect(subject.sasl_jaas_config.inspect).not_to include('admin-secret')
351
+ expect(subject.sasl_jaas_config.inspect).to eq('<password>')
352
+ end
353
+ end
354
+
355
+ context 'with single-line config' do
356
+ let(:jaas_config_value) { 'org.apache.kafka.common.security.plain.PlainLoginModule required username="admin" password="admin-secret";' }
357
+ let(:config) { super().merge('sasl_jaas_config' => jaas_config_value) }
358
+
359
+ include_examples 'sasl_jaas_config password handling'
360
+ end
361
+
362
+ context 'with multiline config' do
363
+ let(:jaas_config_value) {
364
+ <<~JAAS
365
+ org.apache.kafka.common.security.plain.PlainLoginModule required
366
+ username="admin"
367
+ password="admin-secret"
368
+ user_admin="admin-secret"
369
+ user_alice="alice-secret";
370
+ JAAS
371
+ }
372
+ let(:config) { super().merge('sasl_jaas_config' => jaas_config_value) }
373
+
374
+ include_examples 'sasl_jaas_config password handling'
375
+ end
376
+ end
333
377
  end
334
378
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-integration-kafka
3
3
  version: !ruby/object:Gem::Version
4
- version: 12.1.1
4
+ version: 12.1.3
5
5
  platform: java
6
6
  authors:
7
7
  - Elastic
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2026-04-13 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: logstash-core-plugin-api
@@ -246,11 +246,11 @@ files:
246
246
  - spec/unit/outputs/kafka_spec.rb
247
247
  - vendor/jar-dependencies/at/yawk/lz4/lz4-java/1.10.1/lz4-java-1.10.1.jar
248
248
  - vendor/jar-dependencies/com/eclipsesource/minimal-json/minimal-json/0.9.5/minimal-json-0.9.5.jar
249
- - vendor/jar-dependencies/com/fasterxml/jackson/core/jackson-annotations/2.20/jackson-annotations-2.20.jar
250
- - vendor/jar-dependencies/com/fasterxml/jackson/core/jackson-core/2.20.0/jackson-core-2.20.0.jar
251
- - vendor/jar-dependencies/com/fasterxml/jackson/core/jackson-databind/2.20.0/jackson-databind-2.20.0.jar
252
- - vendor/jar-dependencies/com/fasterxml/jackson/dataformat/jackson-dataformat-csv/2.20.0/jackson-dataformat-csv-2.20.0.jar
253
- - vendor/jar-dependencies/com/fasterxml/jackson/datatype/jackson-datatype-jdk8/2.20.0/jackson-datatype-jdk8-2.20.0.jar
249
+ - vendor/jar-dependencies/com/fasterxml/jackson/core/jackson-annotations/2.21/jackson-annotations-2.21.jar
250
+ - vendor/jar-dependencies/com/fasterxml/jackson/core/jackson-core/2.21.2/jackson-core-2.21.2.jar
251
+ - vendor/jar-dependencies/com/fasterxml/jackson/core/jackson-databind/2.21.2/jackson-databind-2.21.2.jar
252
+ - vendor/jar-dependencies/com/fasterxml/jackson/dataformat/jackson-dataformat-csv/2.21.2/jackson-dataformat-csv-2.21.2.jar
253
+ - vendor/jar-dependencies/com/fasterxml/jackson/datatype/jackson-datatype-jdk8/2.21.2/jackson-datatype-jdk8-2.21.2.jar
254
254
  - vendor/jar-dependencies/com/github/luben/zstd-jni/1.5.6-10/zstd-jni-1.5.6-10.jar
255
255
  - vendor/jar-dependencies/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar
256
256
  - vendor/jar-dependencies/com/google/errorprone/error_prone_annotations/2.18.0/error_prone_annotations-2.18.0.jar
@@ -261,10 +261,10 @@ files:
261
261
  - vendor/jar-dependencies/com/google/re2j/re2j/1.6/re2j-1.6.jar
262
262
  - vendor/jar-dependencies/commons-codec/commons-codec/1.19.0/commons-codec-1.19.0.jar
263
263
  - vendor/jar-dependencies/commons-io/commons-io/2.20.0/commons-io-2.20.0.jar
264
- - vendor/jar-dependencies/io/confluent/common-utils/8.2.0/common-utils-8.2.0.jar
265
- - vendor/jar-dependencies/io/confluent/kafka-avro-serializer/8.2.0/kafka-avro-serializer-8.2.0.jar
266
- - vendor/jar-dependencies/io/confluent/kafka-schema-registry-client/8.2.0/kafka-schema-registry-client-8.2.0.jar
267
- - vendor/jar-dependencies/io/confluent/kafka-schema-serializer/8.2.0/kafka-schema-serializer-8.2.0.jar
264
+ - vendor/jar-dependencies/io/confluent/common-utils/8.2.1/common-utils-8.2.1.jar
265
+ - vendor/jar-dependencies/io/confluent/kafka-avro-serializer/8.2.1/kafka-avro-serializer-8.2.1.jar
266
+ - vendor/jar-dependencies/io/confluent/kafka-schema-registry-client/8.2.1/kafka-schema-registry-client-8.2.1.jar
267
+ - vendor/jar-dependencies/io/confluent/kafka-schema-serializer/8.2.1/kafka-schema-serializer-8.2.1.jar
268
268
  - vendor/jar-dependencies/io/confluent/logredactor-metrics/1.0.17/logredactor-metrics-1.0.17.jar
269
269
  - vendor/jar-dependencies/io/confluent/logredactor/1.0.17/logredactor-1.0.17.jar
270
270
  - vendor/jar-dependencies/io/swagger/core/v3/swagger-annotations/2.2.29/swagger-annotations-2.2.29.jar
@@ -272,8 +272,8 @@ files:
272
272
  - vendor/jar-dependencies/org/apache/commons/commons-compress/1.28.0/commons-compress-1.28.0.jar
273
273
  - vendor/jar-dependencies/org/apache/commons/commons-lang3/3.18.0/commons-lang3-3.18.0.jar
274
274
  - vendor/jar-dependencies/org/apache/httpcomponents/client5/httpclient5/5.5/httpclient5-5.5.jar
275
- - vendor/jar-dependencies/org/apache/httpcomponents/core5/httpcore5-h2/5.3.4/httpcore5-h2-5.3.4.jar
276
- - vendor/jar-dependencies/org/apache/httpcomponents/core5/httpcore5/5.3.4/httpcore5-5.3.4.jar
275
+ - vendor/jar-dependencies/org/apache/httpcomponents/core5/httpcore5-h2/5.3.6/httpcore5-h2-5.3.6.jar
276
+ - vendor/jar-dependencies/org/apache/httpcomponents/core5/httpcore5/5.3.6/httpcore5-5.3.6.jar
277
277
  - vendor/jar-dependencies/org/apache/kafka/kafka-clients/4.2.0/kafka-clients-4.2.0.jar
278
278
  - vendor/jar-dependencies/org/checkerframework/checker-qual/3.33.0/checker-qual-3.33.0.jar
279
279
  - vendor/jar-dependencies/org/slf4j/slf4j-api/2.0.17/slf4j-api-2.0.17.jar
@@ -301,7 +301,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
301
301
  - !ruby/object:Gem::Version
302
302
  version: '0'
303
303
  requirements: []
304
- rubygems_version: 3.6.3
304
+ rubygems_version: 3.7.2
305
305
  specification_version: 4
306
306
  summary: Integration with Kafka - input and output plugins
307
307
  test_files: