logstash-output-kafka 7.3.2 → 8.0.0

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: a10de2fd3b875b0349bfd81afdc25808cc90c90599868f176e73e3758614821d
4
- data.tar.gz: b3682d3204b4b5304a78b6a64e2f2300f8890ef80805c82cd507999f94514f8d
3
+ metadata.gz: a981761a88f5164e806a8905d0029f5c9cae7c0e8c3c3fcda75a6c2f0e1ba376
4
+ data.tar.gz: dfff30a2b2945f37011d6c017ef24a3a4d59364a4f89b71cdc828990299ce848
5
5
  SHA512:
6
- metadata.gz: e1555e10e79b349cab59d256c353718bd415a58ebcf2c698437da45fd14a92c07cff21e1122cf349e768d3d6883f74532a363ee19d0d27a094dd3e73b2a62275
7
- data.tar.gz: 2163e214ab7306f8fd92176e0e72b6d7d792c79831fcd1eb64a305bd1c7d2d5e28cf0f3b1e2d0d24a8e774b86b2c7be43bc32eeb60aee86903ee7648e1b936ac
6
+ metadata.gz: 95dd113a68bef32a2f2fcfca611ae82d11087697af6ea13ba122ffc070da65a4bacf9019d3db1a60f8d16a1d65d09dc3e1a682e3a26f1fc37405e75a88b7dfc1
7
+ data.tar.gz: f86de71028de564096d0f85f1d46e95edee7c7fe84834f2e44115934da43a008019cef0ad5956f478e8bad968b16f84ebfdf6024e05c8b100fd18af879041acf
@@ -1,5 +1,5 @@
1
- ## 7.3.2
2
- - Fixed issue with unnecessary sleep after retries exhausted [#216](https://github.com/logstash-plugins/logstash-output-kafka/pull/216)
1
+ ## 8.0.0
2
+ - Removed obsolete `block_on_buffer_full`, `ssl` and `timeout_ms` options
3
3
 
4
4
  ## 7.3.1
5
5
  - Added support for kafka property `ssl.endpoint.identification.algorithm` [#213](https://github.com/logstash-plugins/logstash-output-kafka/pull/213)
@@ -73,8 +73,6 @@ class LogStash::Outputs::Kafka < LogStash::Outputs::Base
73
73
  # `host1:port1,host2:port2`, and the list can be a subset of brokers or a VIP pointing to a
74
74
  # subset of brokers.
75
75
  config :bootstrap_servers, :validate => :string, :default => 'localhost:9092'
76
-
77
- config :block_on_buffer_full, :validate => :boolean, :obsolete => "This options is obsolete"
78
76
  # The total bytes of memory the producer can use to buffer records waiting to be sent to the server.
79
77
  config :buffer_memory, :validate => :number, :default => 33554432
80
78
  # The compression type for all data generated by the producer.
@@ -124,8 +122,6 @@ class LogStash::Outputs::Kafka < LogStash::Outputs::Base
124
122
  config :retry_backoff_ms, :validate => :number, :default => 100
125
123
  # The size of the TCP send buffer to use when sending data.
126
124
  config :send_buffer_bytes, :validate => :number, :default => 131072
127
- # Enable SSL/TLS secured communication to Kafka broker.
128
- config :ssl, :validate => :boolean, :obsolete => "Use security_protocol => 'SSL'"
129
125
  # The truststore type.
130
126
  config :ssl_truststore_type, :validate => :string
131
127
  # The JKS truststore path to validate the Kafka broker's certificate.
@@ -171,8 +167,6 @@ class LogStash::Outputs::Kafka < LogStash::Outputs::Base
171
167
  # Optional path to kerberos config file. This is krb5.conf style as detailed in https://web.mit.edu/kerberos/krb5-1.12/doc/admin/conf_files/krb5_conf.html
172
168
  config :kerberos_config, :validate => :path
173
169
 
174
- config :timeout_ms, :validate => :number, :obsolete => "This option is obsolete. Please use request_timeout_ms"
175
-
176
170
  # The topic to produce messages to
177
171
  config :topic_id, :validate => :string, :required => true
178
172
  # Serializer class for the value of the message
@@ -231,7 +225,7 @@ class LogStash::Outputs::Kafka < LogStash::Outputs::Base
231
225
  end
232
226
 
233
227
  def retrying_send(batch)
234
- remaining = @retries
228
+ remaining = @retries;
235
229
 
236
230
  while batch.any?
237
231
  if !remaining.nil?
@@ -281,15 +275,13 @@ class LogStash::Outputs::Kafka < LogStash::Outputs::Base
281
275
  break if failures.empty?
282
276
 
283
277
  # Otherwise, retry with any failed transmissions
284
- if remaining.nil? || remaining >= 0
285
- delay = @retry_backoff_ms / 1000.0
286
- logger.info("Sending batch to Kafka failed. Will retry after a delay.", :batch_size => batch.size,
287
- :failures => failures.size,
288
- :sleep => delay)
289
- batch = failures
290
- sleep(delay)
291
- end
278
+ batch = failures
279
+ delay = @retry_backoff_ms / 1000.0
280
+ logger.info("Sending batch to Kafka failed. Will retry after a delay.", :batch_size => batch.size,
281
+ :failures => failures.size, :sleep => delay);
282
+ sleep(delay)
292
283
  end
284
+
293
285
  end
294
286
 
295
287
  def close
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
 
3
3
  s.name = 'logstash-output-kafka'
4
- s.version = '7.3.2'
4
+ s.version = '8.0.0'
5
5
  s.licenses = ['Apache-2.0']
6
6
  s.summary = "Writes events to a Kafka topic"
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/logstash-plugin install gemname. This gem is not a stand-alone program"
@@ -49,7 +49,7 @@ describe "outputs/kafka" do
49
49
  kafka.register
50
50
  kafka.multi_receive([event])
51
51
  end
52
-
52
+
53
53
  it 'should raise config error when truststore location is not set and ssl is enabled' do
54
54
  kafka = LogStash::Outputs::Kafka.new(simple_kafka_config.merge("security_protocol" => "SSL"))
55
55
  expect { kafka.register }.to raise_error(LogStash::ConfigurationError, /ssl_truststore_location must be set when SSL is enabled/)
@@ -120,41 +120,6 @@ describe "outputs/kafka" do
120
120
  end
121
121
  end
122
122
 
123
- context 'when retries is 0' do
124
- let(:retries) { 0 }
125
- let(:max_sends) { 1 }
126
-
127
- it "should should only send once" do
128
- expect_any_instance_of(org.apache.kafka.clients.producer.KafkaProducer).to receive(:send)
129
- .once
130
- .and_wrap_original do |m, *args|
131
- # Always fail.
132
- future = java.util.concurrent.FutureTask.new { raise "Failed" }
133
- future.run
134
- future
135
- end
136
- kafka = LogStash::Outputs::Kafka.new(simple_kafka_config.merge("retries" => retries))
137
- kafka.register
138
- kafka.multi_receive([event])
139
- end
140
-
141
- it 'should not sleep' do
142
- expect_any_instance_of(org.apache.kafka.clients.producer.KafkaProducer).to receive(:send)
143
- .once
144
- .and_wrap_original do |m, *args|
145
- # Always fail.
146
- future = java.util.concurrent.FutureTask.new { raise "Failed" }
147
- future.run
148
- future
149
- end
150
-
151
- kafka = LogStash::Outputs::Kafka.new(simple_kafka_config.merge("retries" => retries))
152
- expect(kafka).not_to receive(:sleep).with(anything)
153
- kafka.register
154
- kafka.multi_receive([event])
155
- end
156
- end
157
-
158
123
  context "and when retries is set by the user" do
159
124
  let(:retries) { (rand * 10).to_i }
160
125
  let(:max_sends) { retries + 1 }
@@ -172,21 +137,6 @@ describe "outputs/kafka" do
172
137
  kafka.register
173
138
  kafka.multi_receive([event])
174
139
  end
175
-
176
- it 'should only sleep retries number of times' do
177
- expect_any_instance_of(org.apache.kafka.clients.producer.KafkaProducer).to receive(:send)
178
- .at_most(max_sends)
179
- .and_wrap_original do |m, *args|
180
- # Always fail.
181
- future = java.util.concurrent.FutureTask.new { raise "Failed" }
182
- future.run
183
- future
184
- end
185
- kafka = LogStash::Outputs::Kafka.new(simple_kafka_config.merge("retries" => retries))
186
- expect(kafka).to receive(:sleep).exactly(retries).times
187
- kafka.register
188
- kafka.multi_receive([event])
189
- end
190
140
  end
191
141
  end
192
142
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-output-kafka
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.3.2
4
+ version: 8.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elasticsearch
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-12 00:00:00.000000000 Z
11
+ date: 2019-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement