-
Notifications
You must be signed in to change notification settings - Fork 3.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
Observer CLI plugin: classic queues #3314
Conversation
This comment has been minimized.
This comment has been minimized.
32f6ca9
to
0cb8e0a
Compare
Next steps:
Let's see what @gerhard thinks about this as well. |
Oh wow, I can't believe that I haven't thought about this! This would be an amazing addition. Love it! 💙 |
This looks like a good starting point to me:
|
This pull request modifies the erlang.mk build only. Should the makefiles be updated as well @lhoguin? |
Following the work on CQv2 and beyond the needs for this type of plugin have changed. I propose the following fields:
With that we should have a clear view of where messages are in each CQ. |
cda71db
to
7300a1f
Compare
To test, create some work using classic queues, then connect via |
7300a1f
to
b06bf96
Compare
Hold on before merge there's a small visual bug when there are many queues. |
This specifically targets CQv2 and aims to identify where messages are located (Erlang/GS2 mailbox, memory/disk/buffer, pending acks and confirms). This commit also makes it easy to add more plugins in the future.
b06bf96
to
c7e7179
Compare
Most recent commit should fix it. |
Fantastic addition. Any chance to backport it into earlier versions? |
It cannot even be backported to 3.11 as it targets a CQv2 revision scheduled to ship in 3.12.0. |
I will soon open a PR for 3.11 and 3.10. |
We can write
observer_cli
plugins. Here's one for classic queues.I see these as shortcuts for us to retrieve information about a system we need to debug, especially for cases where we would need to deal with customers directly and ask them to retrieve information from the Erlang node. But it could be used for any useful information to retrieve from the system.
Types of Changes
Checklist