-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Metricbeat exchanges and queues' message rates (enhancement request) #6442
Comments
I try to figure out how the schema works. I found these lines in the metricbeat/module/rabbitmq/queue/data.go file:
I'm not sure how to get the data. In the result from the rabbitmq API, the "rate" keys do not have unique names for all of the 3 occurences:
I'm not sure whether the following structure would work. Does the "messages_details" key uniquely identify the underlying "rate" key in the source dataset? Is this even possible with the source data at the moment or would it be better to have unique keys for all of the 3 "rate" keys?
Also, I didn't find out how to get the float/double value using the existing source code, so I used string for now. How can I use float / double. Typing "c." does not suggest anything like that in autocomplete. As you can see, I'm completely new to the go programming language and I'd be very happy if anyone could help me. |
@kvalev could you give me a hint maybe? I looked up who created the file and found your name ;) |
Do you know whether you can get the message rates from the RabbitMQ REST API? Looking at the REST API output of my RabbitMQ version there seems to be backing_queue_status.avg_ingress_rate/avg_egress_rate, but I am not sure whether those are the ones that you need.
|
The REST API has the following endpoint: /api/queues/vhost/name Which gives me the following result for my example queue
I think the data I need is in the following keys: But the fields are all called "rate" so I wonder how I can access the correct one |
I think somebody on the forums had the same issue - https://discuss.elastic.co/t/libbeat-common-schema-mapstriface/118678 |
I still don't really understand how to solve it. What I understood from the last post of @urso (https://discuss.elastic.co/t/libbeat-common-schema-mapstriface/118678/6?u=christian_h) is that I need to use mapstriface rather than mapstrstr But I still don't understand which identifier I need to access the different "rate" fields.
|
I have started working on pull request, which I can submit in few days - master...kvalev:rabbitmq_message_rates |
Great, thanks! |
@CodingSpiderFox @kvalev Thanks for working on this. I'm looking forward to the PR this will also make commenting easier. No worries if the PR is still WIP and does not fully work yet. |
Is there anything left which needs to be done to be able to create the PR? |
From https://discuss.elastic.co/t/metricbeat-rabbitmq-collect-message-rates/120910
It would be great to also have the incoming/outgoing message rates fields collected by metricbeat for both queues and exchanges.
This way, I could monitor whether someone is still sending data over my RMQ instance.
The text was updated successfully, but these errors were encountered: