logstash-output-elasticsearch 3.0.1-java → 3.0.2-java

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f948e5caa196ea3ba4eb76f706c65f81670189b4
4
- data.tar.gz: e8a600c78977584ce8a19f881f1dc462e1340ba5
3
+ metadata.gz: 7b8baebc24fbd14637d41ef87a5a0eeff7daf94f
4
+ data.tar.gz: e1ebb6428b9f00175f1cd816dc19d0c0ed4c36d9
5
5
  SHA512:
6
- metadata.gz: 1c167b9448ec63baecb93bacecbdac5fbef4f005d39121700a51579a51f742e6827f93f12552c36c2ee2b18f3bb5033c4be3ab1b0f8b242e71c27b14088b040d
7
- data.tar.gz: f579359b3b18ecbf4fbdc86559a077ce306df472bd9c0e961882fc604c32ef0e2d3b7c28386af37c14687529e8fc8f03aa34f00a36d980c550f876efa8465d2f
6
+ metadata.gz: ccb0eec4af4e4dcadcf39f3db0ee986799887f202627722c3eb88677d5a1c7996e4338ce60ad123ebbeca44d90cc235d23a95885eda47e6ac0b3c5115853d053
7
+ data.tar.gz: 534769a76b11249b73a91622928271aa9a7c8f1ab2ebde6d50bc117e0d0046356655f4652825110c7a88ab57ae75e8c896ea17f51ecadc200f8ed57dddd8c8ed
data/CHANGELOG.md CHANGED
@@ -1,3 +1,5 @@
1
+ ## 3.0.2
2
+ - Fix issues where URI based paths in 'hosts' would not function correctly
1
3
  ## 3.0.1
2
4
  - Republish all the gems under jruby.
3
5
  ## 3.0.0
@@ -10,12 +12,12 @@
10
12
 
11
13
  ## 2.6.1
12
14
  - Add 'retry_on_conflict' configuration option which should have been here from the beginning
13
-
15
+
14
16
  ## 2.5.2
15
17
  - Fix bug with update document with doc_as_upsert and scripting (#364, #359)
16
18
  - Make error messages more verbose and easier to parse by humans
17
19
  - Retryable failures are now logged at the info level instead of warning. (issue #372)
18
-
20
+
19
21
  ## 2.5.1
20
22
  - Fix bug where SSL would sometimes not be enabled
21
23
 
@@ -79,7 +79,9 @@ class LogStash::Outputs::ElasticSearch < LogStash::Outputs::Base
79
79
 
80
80
  # HTTP Path at which the Elasticsearch server lives. Use this if you must run Elasticsearch behind a proxy that remaps
81
81
  # the root path for the Elasticsearch HTTP API lives.
82
- config :path, :validate => :string, :default => "/"
82
+ # Note that if you use paths as components of URLs in the 'hosts' field you may
83
+ # not also set this field. That will raise an error at startup
84
+ config :path, :validate => :string
83
85
 
84
86
  # Enable SSL/TLS secured communication to Elasticsearch cluster. Leaving this unspecified will use whatever scheme
85
87
  # is specified in the URLs listed in 'hosts'. If no explicit protocol is specified plain HTTP will be used.
@@ -10,7 +10,11 @@ module LogStash; module Outputs; class ElasticSearch;
10
10
  }
11
11
 
12
12
  common_options[:timeout] = params["timeout"] if params["timeout"]
13
- client_settings[:path] = "/#{params["path"]}/".gsub(/\/+/, "/") # Normalize slashes
13
+
14
+ if params["path"]
15
+ client_settings[:path] = "/#{params["path"]}/".gsub(/\/+/, "/") # Normalize slashes
16
+ end
17
+
14
18
  logger.debug? && logger.debug("Normalizing http path", :path => params["path"], :normalized => client_settings[:path])
15
19
 
16
20
  client_settings.merge! setup_ssl(logger, params)
@@ -103,4 +107,4 @@ module LogStash; module Outputs; class ElasticSearch;
103
107
  }
104
108
  end
105
109
  end
106
- end; end; end
110
+ end; end; end
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
 
3
3
  s.name = 'logstash-output-elasticsearch'
4
- s.version = '3.0.1'
4
+ s.version = '3.0.2'
5
5
  s.licenses = ['apache-2.0']
6
6
  s.summary = "Logstash Output to Elasticsearch"
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"
@@ -18,10 +18,12 @@ describe "outputs/elasticsearch" do
18
18
  eso.client.send(:client).transport.options[:hosts].first
19
19
  }
20
20
 
21
+ let(:do_register) { true }
22
+
21
23
  around(:each) do |block|
22
- eso.register
24
+ eso.register if do_register
23
25
  block.call()
24
- eso.close
26
+ eso.close if do_register
25
27
  end
26
28
 
27
29
  describe "getting a document type" do
@@ -78,6 +80,56 @@ describe "outputs/elasticsearch" do
78
80
  expect(manticore_host).to include(options["path"])
79
81
  end
80
82
  end
83
+
84
+ context "with a URI based path" do
85
+ let(:options) do
86
+ o = super()
87
+ o.delete("path")
88
+ o["hosts"] = ["http://localhost:9200/mypath/"]
89
+ o
90
+ end
91
+ let(:client_host_path) { URI.parse(eso.client.client_options[:hosts].first).path }
92
+
93
+ it "should initialize without error" do
94
+ expect { eso }.not_to raise_error
95
+ end
96
+
97
+ it "should use the URI path" do
98
+ expect(client_host_path).to eql("/mypath/")
99
+ end
100
+
101
+ context "with a path option but no URL path" do
102
+ let(:options) do
103
+ o = super()
104
+ o["path"] = "/override/"
105
+ o["hosts"] = ["http://localhost:9200"]
106
+ o
107
+ end
108
+
109
+ it "should initialize without error" do
110
+ expect { eso }.not_to raise_error
111
+ end
112
+
113
+ it "should use the option path" do
114
+ expect(client_host_path).to eql("/override/")
115
+ end
116
+ end
117
+
118
+ # If you specify the path in two spots that is an error!
119
+ context "with a path option and a URL path" do
120
+ let(:do_register) { false } # Register will fail
121
+ let(:options) do
122
+ o = super()
123
+ o["path"] = "/override"
124
+ o["hosts"] = ["http://localhost:9200/mypath/"]
125
+ o
126
+ end
127
+
128
+ it "should initialize with an error" do
129
+ expect { eso.register }.to raise_error(LogStash::ConfigurationError)
130
+ end
131
+ end
132
+ end
81
133
  end
82
134
  describe "without a port specified" do
83
135
  it "should properly set the default port (9200) on the HTTP client" do
metadata CHANGED
@@ -1,187 +1,187 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-output-elasticsearch
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 3.0.2
5
5
  platform: java
6
6
  authors:
7
7
  - Elastic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-05-09 00:00:00.000000000 Z
11
+ date: 2016-05-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
+ name: concurrent-ruby
15
+ version_requirements: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
14
20
  requirement: !ruby/object:Gem::Requirement
15
21
  requirements:
16
- - - ">="
22
+ - - '>='
17
23
  - !ruby/object:Gem::Version
18
24
  version: '0'
19
- name: concurrent-ruby
20
25
  prerelease: false
21
26
  type: :runtime
27
+ - !ruby/object:Gem::Dependency
28
+ name: elasticsearch
22
29
  version_requirements: !ruby/object:Gem::Requirement
23
30
  requirements:
24
- - - ">="
31
+ - - '>='
25
32
  - !ruby/object:Gem::Version
26
- version: '0'
27
- - !ruby/object:Gem::Dependency
33
+ version: 1.0.13
34
+ - - ~>
35
+ - !ruby/object:Gem::Version
36
+ version: '1.0'
28
37
  requirement: !ruby/object:Gem::Requirement
29
38
  requirements:
30
- - - ">="
39
+ - - '>='
31
40
  - !ruby/object:Gem::Version
32
41
  version: 1.0.13
33
- - - "~>"
42
+ - - ~>
34
43
  - !ruby/object:Gem::Version
35
44
  version: '1.0'
36
- name: elasticsearch
37
45
  prerelease: false
38
46
  type: :runtime
47
+ - !ruby/object:Gem::Dependency
48
+ name: stud
39
49
  version_requirements: !ruby/object:Gem::Requirement
40
50
  requirements:
41
- - - ">="
51
+ - - '>='
42
52
  - !ruby/object:Gem::Version
43
- version: 1.0.13
44
- - - "~>"
53
+ version: 0.0.17
54
+ - - ~>
45
55
  - !ruby/object:Gem::Version
46
- version: '1.0'
47
- - !ruby/object:Gem::Dependency
56
+ version: '0.0'
48
57
  requirement: !ruby/object:Gem::Requirement
49
58
  requirements:
50
- - - ">="
59
+ - - '>='
51
60
  - !ruby/object:Gem::Version
52
61
  version: 0.0.17
53
- - - "~>"
62
+ - - ~>
54
63
  - !ruby/object:Gem::Version
55
64
  version: '0.0'
56
- name: stud
57
65
  prerelease: false
58
66
  type: :runtime
67
+ - !ruby/object:Gem::Dependency
68
+ name: cabin
59
69
  version_requirements: !ruby/object:Gem::Requirement
60
70
  requirements:
61
- - - ">="
71
+ - - ~>
62
72
  - !ruby/object:Gem::Version
63
- version: 0.0.17
64
- - - "~>"
65
- - !ruby/object:Gem::Version
66
- version: '0.0'
67
- - !ruby/object:Gem::Dependency
73
+ version: '0.6'
68
74
  requirement: !ruby/object:Gem::Requirement
69
75
  requirements:
70
- - - "~>"
76
+ - - ~>
71
77
  - !ruby/object:Gem::Version
72
78
  version: '0.6'
73
- name: cabin
74
79
  prerelease: false
75
80
  type: :runtime
81
+ - !ruby/object:Gem::Dependency
82
+ name: logstash-core-plugin-api
76
83
  version_requirements: !ruby/object:Gem::Requirement
77
84
  requirements:
78
- - - "~>"
85
+ - - ~>
79
86
  - !ruby/object:Gem::Version
80
- version: '0.6'
81
- - !ruby/object:Gem::Dependency
87
+ version: '2.0'
82
88
  requirement: !ruby/object:Gem::Requirement
83
89
  requirements:
84
- - - "~>"
90
+ - - ~>
85
91
  - !ruby/object:Gem::Version
86
92
  version: '2.0'
87
- name: logstash-core-plugin-api
88
93
  prerelease: false
89
94
  type: :runtime
95
+ - !ruby/object:Gem::Dependency
96
+ name: ftw
90
97
  version_requirements: !ruby/object:Gem::Requirement
91
98
  requirements:
92
- - - "~>"
99
+ - - ~>
93
100
  - !ruby/object:Gem::Version
94
- version: '2.0'
95
- - !ruby/object:Gem::Dependency
101
+ version: 0.0.42
96
102
  requirement: !ruby/object:Gem::Requirement
97
103
  requirements:
98
- - - "~>"
104
+ - - ~>
99
105
  - !ruby/object:Gem::Version
100
106
  version: 0.0.42
101
- name: ftw
102
107
  prerelease: false
103
108
  type: :development
109
+ - !ruby/object:Gem::Dependency
110
+ name: logstash-codec-plain
104
111
  version_requirements: !ruby/object:Gem::Requirement
105
112
  requirements:
106
- - - "~>"
113
+ - - '>='
107
114
  - !ruby/object:Gem::Version
108
- version: 0.0.42
109
- - !ruby/object:Gem::Dependency
115
+ version: '0'
110
116
  requirement: !ruby/object:Gem::Requirement
111
117
  requirements:
112
- - - ">="
118
+ - - '>='
113
119
  - !ruby/object:Gem::Version
114
120
  version: '0'
115
- name: logstash-codec-plain
116
121
  prerelease: false
117
122
  type: :development
123
+ - !ruby/object:Gem::Dependency
124
+ name: manticore
118
125
  version_requirements: !ruby/object:Gem::Requirement
119
126
  requirements:
120
- - - ">="
127
+ - - '>='
121
128
  - !ruby/object:Gem::Version
122
- version: '0'
123
- - !ruby/object:Gem::Dependency
129
+ version: 0.5.4
130
+ - - <
131
+ - !ruby/object:Gem::Version
132
+ version: 1.0.0
124
133
  requirement: !ruby/object:Gem::Requirement
125
134
  requirements:
126
- - - ">="
135
+ - - '>='
127
136
  - !ruby/object:Gem::Version
128
137
  version: 0.5.4
129
- - - "<"
138
+ - - <
130
139
  - !ruby/object:Gem::Version
131
140
  version: 1.0.0
132
- name: manticore
133
141
  prerelease: false
134
142
  type: :runtime
143
+ - !ruby/object:Gem::Dependency
144
+ name: logstash-devutils
135
145
  version_requirements: !ruby/object:Gem::Requirement
136
146
  requirements:
137
- - - ">="
138
- - !ruby/object:Gem::Version
139
- version: 0.5.4
140
- - - "<"
147
+ - - '>='
141
148
  - !ruby/object:Gem::Version
142
- version: 1.0.0
143
- - !ruby/object:Gem::Dependency
149
+ version: '0'
144
150
  requirement: !ruby/object:Gem::Requirement
145
151
  requirements:
146
- - - ">="
152
+ - - '>='
147
153
  - !ruby/object:Gem::Version
148
154
  version: '0'
149
- name: logstash-devutils
150
155
  prerelease: false
151
156
  type: :development
157
+ - !ruby/object:Gem::Dependency
158
+ name: longshoreman
152
159
  version_requirements: !ruby/object:Gem::Requirement
153
160
  requirements:
154
- - - ">="
161
+ - - '>='
155
162
  - !ruby/object:Gem::Version
156
163
  version: '0'
157
- - !ruby/object:Gem::Dependency
158
164
  requirement: !ruby/object:Gem::Requirement
159
165
  requirements:
160
- - - ">="
166
+ - - '>='
161
167
  - !ruby/object:Gem::Version
162
168
  version: '0'
163
- name: longshoreman
164
169
  prerelease: false
165
170
  type: :development
171
+ - !ruby/object:Gem::Dependency
172
+ name: flores
166
173
  version_requirements: !ruby/object:Gem::Requirement
167
174
  requirements:
168
- - - ">="
175
+ - - '>='
169
176
  - !ruby/object:Gem::Version
170
177
  version: '0'
171
- - !ruby/object:Gem::Dependency
172
178
  requirement: !ruby/object:Gem::Requirement
173
179
  requirements:
174
- - - ">="
180
+ - - '>='
175
181
  - !ruby/object:Gem::Version
176
182
  version: '0'
177
- name: flores
178
183
  prerelease: false
179
184
  type: :development
180
- version_requirements: !ruby/object:Gem::Requirement
181
- requirements:
182
- - - ">="
183
- - !ruby/object:Gem::Version
184
- version: '0'
185
185
  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
186
186
  email: info@elastic.co
187
187
  executables: []
@@ -234,12 +234,12 @@ require_paths:
234
234
  - lib
235
235
  required_ruby_version: !ruby/object:Gem::Requirement
236
236
  requirements:
237
- - - ">="
237
+ - - '>='
238
238
  - !ruby/object:Gem::Version
239
239
  version: '0'
240
240
  required_rubygems_version: !ruby/object:Gem::Requirement
241
241
  requirements:
242
- - - ">="
242
+ - - '>='
243
243
  - !ruby/object:Gem::Version
244
244
  version: '0'
245
245
  requirements: []