logstash-output-elasticsearch 10.3.0-java → 10.3.1-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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0662d42a8fcb66fa69d4c9b348aef3595d9c8297ea5d37391cab2962452ba06a
|
4
|
+
data.tar.gz: 1fbbecbd7b70f22f3c8091402fc4335749b85d5431ead3b6d9ba2a4a5b12b1c7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 929bf1d422d99ab11ac84c2a63e70de5e211ecdee64036c3c07844cc4b06c61aa22c2e49661c5521db2ee2ce6e8d069d03acfa9a17ff2be196a835a377455074
|
7
|
+
data.tar.gz: f077cb0d83d87b179a226bb9700b837e578adefa2efda988e8aa92225cf531ac2de2c021caeb7f4951e645418bd6646696ba7c54ff9eef9d73720497fd6d1f85
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
## 10.3.1
|
2
|
+
- Fix: handle proxy => '' as if none was set [#912](https://github.com/logstash-plugins/logstash-output-elasticsearch/pull/912)
|
3
|
+
|
1
4
|
## 10.3.0
|
2
5
|
- Feat: Added support for cloud_id and cloud_auth [#906](https://github.com/logstash-plugins/logstash-output-elasticsearch/pull/906)
|
3
6
|
|
data/docs/index.asciidoc
CHANGED
@@ -626,6 +626,8 @@ which is bad.
|
|
626
626
|
Set the address of a forward HTTP proxy.
|
627
627
|
This used to accept hashes as arguments but now only accepts
|
628
628
|
arguments of the URI type to prevent leaking credentials.
|
629
|
+
An empty string is treated as if proxy was not set, this is useful when using
|
630
|
+
environment variables e.g. `proxy => '${LS_PROXY:}'`.
|
629
631
|
|
630
632
|
[id="plugins-{type}s-{plugin}-resurrect_delay"]
|
631
633
|
===== `resurrect_delay`
|
@@ -188,7 +188,7 @@ class LogStash::Outputs::ElasticSearch < LogStash::Outputs::Base
|
|
188
188
|
# Set the address of a forward HTTP proxy.
|
189
189
|
# This used to accept hashes as arguments but now only accepts
|
190
190
|
# arguments of the URI type to prevent leaking credentials.
|
191
|
-
config :proxy, :validate => :uri
|
191
|
+
config :proxy, :validate => :uri # but empty string is allowed
|
192
192
|
|
193
193
|
# Set the timeout, in seconds, for network operations and requests sent Elasticsearch. If
|
194
194
|
# a timeout occurs, the request will be retried.
|
@@ -238,13 +238,32 @@ class LogStash::Outputs::ElasticSearch < LogStash::Outputs::Base
|
|
238
238
|
# Custom Headers to send on each request to elasticsearch nodes
|
239
239
|
config :custom_headers, :validate => :hash, :default => {}
|
240
240
|
|
241
|
+
# @override to handle proxy => '' as if none was set
|
242
|
+
def config_init(params)
|
243
|
+
proxy = params['proxy']
|
244
|
+
if proxy.is_a?(String)
|
245
|
+
# environment variables references aren't yet resolved
|
246
|
+
proxy = deep_replace(proxy)
|
247
|
+
if proxy.empty?
|
248
|
+
params.delete('proxy')
|
249
|
+
@proxy = ''
|
250
|
+
else
|
251
|
+
params['proxy'] = proxy # do not do resolving again
|
252
|
+
end
|
253
|
+
end
|
254
|
+
super(params)
|
255
|
+
end
|
256
|
+
|
241
257
|
def build_client
|
242
258
|
params["metric"] = metric
|
259
|
+
if @proxy.eql?('')
|
260
|
+
@logger.warn "Supplied proxy setting (proxy => '') has no effect"
|
261
|
+
end
|
243
262
|
@client ||= ::LogStash::Outputs::ElasticSearch::HttpClientBuilder.build(@logger, @hosts, params)
|
244
263
|
end
|
245
264
|
|
246
265
|
def close
|
247
|
-
@stopping.make_true
|
266
|
+
@stopping.make_true if @stopping
|
248
267
|
stop_template_installer
|
249
268
|
@client.close if @client
|
250
269
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'logstash-output-elasticsearch'
|
3
|
-
s.version = '10.3.
|
3
|
+
s.version = '10.3.1'
|
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"
|
@@ -69,4 +69,36 @@ describe "Proxy option" do
|
|
69
69
|
end
|
70
70
|
end
|
71
71
|
end
|
72
|
+
|
73
|
+
context "when specified as ''" do
|
74
|
+
let(:settings) { super.merge("proxy" => "${A_MISSING_ENV_VARIABLE:}")}
|
75
|
+
|
76
|
+
it "should not send the proxy option to manticore" do
|
77
|
+
expect { subject.register }.not_to raise_error
|
78
|
+
|
79
|
+
expect(::Manticore::Client).to have_received(:new) do |options|
|
80
|
+
expect(options).not_to include(:proxy)
|
81
|
+
end
|
82
|
+
|
83
|
+
subject.close
|
84
|
+
end
|
85
|
+
end
|
86
|
+
|
87
|
+
context "when specified as invalid uri" do
|
88
|
+
let(:settings) { super.merge("proxy" => ":")}
|
89
|
+
|
90
|
+
it "should fail" do
|
91
|
+
# SafeURI isn't doing the proper exception wrapping for us, we can not simply :
|
92
|
+
# expect { subject.register }.to raise_error(ArgumentError, /URI is not valid/i)
|
93
|
+
begin
|
94
|
+
subject.register
|
95
|
+
rescue ArgumentError => e
|
96
|
+
expect(e.message).to match /URI is not valid/i
|
97
|
+
rescue java.net.URISyntaxException => e
|
98
|
+
expect(e.message).to match /scheme name/i
|
99
|
+
else
|
100
|
+
fail 'exception not raised'
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
72
104
|
end
|
@@ -547,7 +547,7 @@ describe LogStash::Outputs::ElasticSearch do
|
|
547
547
|
expect { subject.register }.to raise_error LogStash::ConfigurationError, /cloud_id and hosts/
|
548
548
|
end
|
549
549
|
end
|
550
|
-
end
|
550
|
+
end if LOGSTASH_VERSION > '6.0'
|
551
551
|
|
552
552
|
describe "cloud.auth" do
|
553
553
|
let(:do_register) { false }
|
@@ -580,7 +580,7 @@ describe LogStash::Outputs::ElasticSearch do
|
|
580
580
|
expect { subject.register }.to raise_error LogStash::ConfigurationError, /cloud_auth and user/
|
581
581
|
end
|
582
582
|
end
|
583
|
-
end
|
583
|
+
end if LOGSTASH_VERSION > '6.0'
|
584
584
|
|
585
585
|
context 'handling elasticsearch document-level status meant for the DLQ' do
|
586
586
|
let(:options) { { "manage_template" => false } }
|
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: 10.3.
|
4
|
+
version: 10.3.1
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
7
|
- Elastic
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-01-
|
11
|
+
date: 2020-01-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|