logstash-output-http 4.3.1 → 4.3.2

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
  SHA1:
3
- metadata.gz: eff15e578da1bbd9f5042e6b0160f94b7a9f737d
4
- data.tar.gz: 561c1e43cd01d98ccbb802f0ddaf4b50785a5e04
3
+ metadata.gz: 6df83fa177f09b440bb4e03b9ad402e8eeb98680
4
+ data.tar.gz: 3cb46bea5343b9c3ff438e9102232f44951daf67
5
5
  SHA512:
6
- metadata.gz: 47beec9456073365a69cec26abeb9cf1d8b2647d7b0154d355830bb188e0cdceef3c3ef1c7191004a99512999decd11d6c0525efc42add9a827b3a15280d0e18
7
- data.tar.gz: 4f4593aa0df0d5c93481152235544c4b70f8f20bb720bb70e89704755374f57c1e01a30b32464a3e47ec2046374c97c89cac39ab0d2ce260a84039a72356cf70
6
+ metadata.gz: ef1bfbccef08f56036dde52cefcea70771fc652d42573bc160dfa3add450802d33a3e8eb20d62a6962ffd430fe8272ff0abf8c7f1a097e8f5c111f27d0f44d21
7
+ data.tar.gz: b1e85549afb877f308ec55300a205083d9be5c70cb969df917a5d30868e84e73bc11058723654d18e38e2fbdb15f14725b2b31d294a419cbb16a14d5c6e46675
@@ -1,3 +1,7 @@
1
+ ## 4.3.1
2
+ - Fix deadlock that could occur in certain situations. All users should upgrade to the latest version.
3
+ This deadlock was caused by certain async HTTP APIs being called out of order thus creating a race.
4
+
1
5
  ## 4.3.0
2
6
  - Add `user` and `password` options to support HTTP basic auth
3
7
 
@@ -12,16 +12,12 @@ START - GENERATED VARIABLES, DO NOT EDIT!
12
12
  END - GENERATED VARIABLES, DO NOT EDIT!
13
13
  ///////////////////////////////////////////
14
14
 
15
- [id="plugins-{type}-{plugin}"]
15
+ [id="plugins-{type}s-{plugin}"]
16
16
 
17
17
  === Http output plugin
18
18
 
19
19
  include::{include_path}/plugin_header.asciidoc[]
20
20
 
21
- ==== Description
22
-
23
-
24
-
25
21
  [id="plugins-{type}s-{plugin}-options"]
26
22
  ==== Http Output Configuration Options
27
23
 
@@ -378,4 +374,4 @@ See https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache
378
374
 
379
375
 
380
376
  [id="plugins-{type}s-{plugin}-common-options"]
381
- include::{include_path}/{type}.asciidoc[]
377
+ include::{include_path}/{type}.asciidoc[]
@@ -198,7 +198,6 @@ class LogStash::Outputs::Http < LogStash::Outputs::Base
198
198
 
199
199
  # Create an async request
200
200
  request = client.background.send(@http_method, url, :body => body, :headers => headers)
201
- request.call # Actually invoke the request in the background
202
201
 
203
202
  request.on_success do |response|
204
203
  begin
@@ -256,6 +255,11 @@ class LogStash::Outputs::Http < LogStash::Outputs::Base
256
255
  :backtrace => e.backtrace)
257
256
  end
258
257
  end
258
+
259
+ # Actually invoke the request in the background
260
+ # Note: this must only be invoked after all handlers are defined, otherwise
261
+ # those handlers are not guaranteed to be called!
262
+ request.call
259
263
  end
260
264
 
261
265
  def close
@@ -284,15 +288,6 @@ class LogStash::Outputs::Http < LogStash::Outputs::Base
284
288
  @logger.error("[HTTP Output Failure] #{message}", opts)
285
289
  end
286
290
 
287
- # Manticore doesn't provide a way to attach handlers to background or async requests well
288
- # It wants you to use futures. The #async method kinda works but expects single thread batches
289
- # and background only returns futures.
290
- # Proposed fix to manticore here: https://github.com/cheald/manticore/issues/32
291
- def request_async_background(request)
292
- @method ||= client.executor.java_method(:submit, [java.util.concurrent.Callable.java_class])
293
- @method.call(request)
294
- end
295
-
296
291
  # Format the HTTP body
297
292
  def event_body(event)
298
293
  # TODO: Create an HTTP post data codec, use that here
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'logstash-output-http'
3
- s.version = '4.3.1'
3
+ s.version = '4.3.2'
4
4
  s.licenses = ['Apache License (2.0)']
5
5
  s.summary = "This output lets you `PUT` or `POST` events to a generic HTTP(S) endpoint"
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"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-output-http
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.3.1
4
+ version: 4.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elastic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-23 00:00:00.000000000 Z
11
+ date: 2017-07-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement