normalise hosts to URI::Generics, which reliably preserve defaults#112
Open
yaauie wants to merge 1 commit into
Open
normalise hosts to URI::Generics, which reliably preserve defaults#112yaauie wants to merge 1 commit into
URI::Generics, which reliably preserve defaults#112yaauie wants to merge 1 commit into
Conversation
a0451cb to
a2794c9
Compare
jsvd
reviewed
Mar 27, 2019
a2794c9 to
90bf27d
Compare
An upstream bug in the Elasticsearch Ruby Client's handling of `String` host arguments that begin with a schema (e.g., `https://localhost`) causes it to default to port 80 or 443, depending on the schema, instead of Elasticsearch's port 9200. Since the Elasticsearch Ruby Client will accept a `URI` in this case, and will correctly handle falling through to appropriate defaults, we normalise to `URI::Generic`, which does not have a default port. We absorb the `ssl => true` case into this normalisation, as its previous implementation prevented the use of non-default ports in the array provided to `hosts`. We also add support for IPv6 addresses, requiring a square-bracketed notation when used in conjunction with a specified port. (see: RFC-3986) Supersedes: logstash-plugins#104 Resolves: logstash-plugins#110 Resolves: logstash-plugins#111
90bf27d to
b18bfb6
Compare
alexcams
pushed a commit
to alexcams/logstash-filter-elasticsearch
that referenced
this pull request
Jan 22, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
An upstream bug in the Elasticsearch Ruby Client's handling of
Stringhostarguments that begin with a schema (e.g.,
https://localhost) causes it todefault to port 80 or 443, depending on the schema, instead of Elasticsearch's
port 9200.
Since the Elasticsearch Ruby Client will accept a
URIin this case, and willcorrectly handle falling through to appropriate defaults, we normalise to
URI::Generic, which does not have a default port.We absorb the
ssl => truecase into this normalisation, as its previousimplementation prevented the use of non-default ports in the array provided
to
hosts.We also add support for IPv6 addresses, requiring a square-bracketed notation
(see: RFC2732)
Supersedes: #104
Resolves: #110
Resolves: #111