logstash-output-http 4.3.1 → 4.3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/docs/index.asciidoc +2 -6
- data/lib/logstash/outputs/http.rb +5 -10
- data/logstash-output-http.gemspec +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6df83fa177f09b440bb4e03b9ad402e8eeb98680
|
4
|
+
data.tar.gz: 3cb46bea5343b9c3ff438e9102232f44951daf67
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ef1bfbccef08f56036dde52cefcea70771fc652d42573bc160dfa3add450802d33a3e8eb20d62a6962ffd430fe8272ff0abf8c7f1a097e8f5c111f27d0f44d21
|
7
|
+
data.tar.gz: b1e85549afb877f308ec55300a205083d9be5c70cb969df917a5d30868e84e73bc11058723654d18e38e2fbdb15f14725b2b31d294a419cbb16a14d5c6e46675
|
data/CHANGELOG.md
CHANGED
@@ -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
|
|
data/docs/index.asciidoc
CHANGED
@@ -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.
|
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.
|
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
|
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
|