Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Optional queue args: link to RabbitMQ docs instead #121

Merged
merged 3 commits into from
Nov 13, 2019

Conversation

michaelklishin
Copy link
Contributor

The current example for optional arguments [1] is not
great for a number of reasons:

  • It suggests something without any explanation as to what the feature is.
  • Policies [2] is a far better option operationally for many extra arguments.
    Application-provided arguments are rigid and require queue deletion and redeclaration to change.
  • The example suggests classic mirrored queues. They are superseded by Quorum Queues [3].

I suggest including a few external links to relevant RabbitMQ doc guides
instead of a "just copy this" single line advice that can be counterproductive.

  1. https://www.rabbitmq.com/queues.html#optional-arguments
  2. https://www.rabbitmq.com/parameters.html#policies
  3. https://www.rabbitmq.com/quorum-queues.html

Thanks for contributing to Logstash! If you haven't already signed our CLA, here's a handy link: https://www.elastic.co/contributor-agreement/

The current example for optional arguments [1] is not
great for a number of reasons:

 * It suggests something without any explanation as to what the feature is.
 * Policies [2] is a far better option operationally for many extra arguments.
    Application-provided arguments are rigid and require queue deletion and redeclaration to change.
 * The example suggests classic mirrored queues. They are superseded by Quorum Queues [3].

I suggest including a few external links to relevant RabbitMQ doc guides
instead of a "just copy this" single line advice that can be counterproductive.

1. https://www.rabbitmq.com/queues.html#optional-arguments
2. https://www.rabbitmq.com/parameters.html#policies
3. https://www.rabbitmq.com/quorum-queues.html
@michaelklishin
Copy link
Contributor Author

@jsvd sorry to bother you directly but it's been a week without any feedback :)

@michaelklishin
Copy link
Contributor Author

@jsvd done. I have updated documentation for a couple settings. I don't see where this plugin would overriden March Hare's default heartbeat timeout and with stock defaults it use 60 seconds instead of "disabled". I verified this from a JRuby REPL with March Hare and Wireshark.
Let me know if you'd like me to post a capture file as evidence.

@jsvd
Copy link
Member

jsvd commented Oct 15, 2019

I don't see where this plugin would overriden March Hare's default heartbeat timeout and with stock defaults it use 60 seconds instead of "disabled".

Nice catch, so you see it being 60 seconds? the default is set in https://github.com/rabbitmq/rabbitmq-java-client/blob/master/src/main/java/com/rabbitmq/client/ConnectionFactory.java#L66, but it should be overriden with zero in the mixin in https://github.com/logstash-plugins/logstash-mixin-rabbitmq_connection/blob/master/lib/logstash/plugin_mixins/rabbitmq_connection.rb#L105

@michaelklishin
Copy link
Contributor Author

It is 60 seconds in the Java client and March Hare. I'm not sure why would anyone disable heartbeats by default? I wouldn't.

@michaelklishin
Copy link
Contributor Author

I'd be happy to submit another PR that changes the default or even push it to this one.

@michaelklishin
Copy link
Contributor Author

@jsvd any more suggestions? :)

@michaelklishin
Copy link
Contributor Author

Bump.

Copy link
Member

@jsvd jsvd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@michaelklishin
Copy link
Contributor Author

@jsvd so what happens now, more reviews?

@michaelklishin
Copy link
Contributor Author

@jsvd I'd really appreciate if the docs were updated as currently they are recommending things that Team RabbitMQ does not.

@jsvd jsvd merged commit 95625c1 into logstash-plugins:master Nov 13, 2019
@jsvd
Copy link
Member

jsvd commented Nov 13, 2019

@yaauie with the move of this plugin to an integration repo, please take note of carrying this change over to https://github.com/logstash-plugins/logstash-integration-rabbitmq

@yaauie
Copy link
Contributor

yaauie commented Nov 13, 2019

@jsvd I have filed logstash-plugins/logstash-integration-rabbitmq#3 (including absorbing these upstream changes) to enumerate the steps being taken, and added it to the top of my planned work.

@michaelklishin I'm sorry for dropping this. I'l work to ensure that docs build has what it needs to include these changes shortly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants