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

Add support for RabbitMQ streams #51

Open
dantamsdb opened this issue Jan 13, 2022 · 3 comments
Open

Add support for RabbitMQ streams #51

dantamsdb opened this issue Jan 13, 2022 · 3 comments
Labels
enhancement New feature or request

Comments

@dantamsdb
Copy link

RabbitMQ 3.9 has added a new feature called streams. See here: https://www.rabbitmq.com/streams.html

As described on the above page, one of the advantages of RabbitMQ streams versus queues is throughput performance.

If Logstash added support for RabbitMQ streams both as input and output, then Logstash users who integrate with RabbitMQ, and who are able to switch from queues to streams, would get much better throughput performance.

Today we are using RabbitMQ queues as both Logstash input and output, and we are not happy with the performance.

@dantamsdb dantamsdb added the enhancement New feature or request label Jan 13, 2022
@daniel-bray-sonalake
Copy link

Are there asny plans to add streams support to the backllog?

I can use this plugin to process rabbit events on a stream, but I can't find a way to set the offset. This means that any messages written to the stream while logstash is down are lost.

I've raised this here to see if it's a config issue on my part: https://discuss.elastic.co/t/can-the-logstash-rabbitmq-input-plugin-read-from-the-start-of-a-stream/296084

But if the plugin can't support streams at all, and won't for the forseable future, we'll have to find another approach.

Thanks

@deepakLabs
Copy link

deepakLabs commented May 23, 2023

Agree with @dantamsdb, @mashhurs Can we include this as well inn the sprint? This is a significant upgrade over queues and will boost the usability and performance of RabbitMQ based Logstash by miles.
cc :
@dantamsdb , @daniel-bray-sonalake

@bonobo78
Copy link

Hi,
I was reading RabbitMQ documentation on streams and it appears that it is supported but only with stream core see the stream core and stream plugin comparison page.

=> An AMQP 0.9.1 client library that can specify optional queue and consumer arguments will be able to use streams as regular AMQP 0.9.1 queues.

The problem with the consuming process is that you have to fix the x-stream-offset value to control where to start in the stream and the only reasonable and permanent values are next or last.

It is not clear for me, but it seems that RabbitMQ stores the last offset consumed for every clients.
Then with x-stream-offset set to next, it makes no changes for Logstash with classic queues.

_Fred.

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

No branches or pull requests

4 participants