How to display RabbitMQ Erlang processes

Use rabbitmq_top plugin to display RabbitMQ Erlang processes.

RabbitMQ version.

$ sudo rabbitmq-diagnostics server_version
Asking node [email protected] for its RabbitMQ version...
3.7.18

Enable rabbitmq_top plugin.

$ sudo rabbitmq-plugins enable rabbitmq_top
The following plugins have been configured:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_top
  rabbitmq_web_dispatch
Applying plugin configuration to [email protected]
The following plugins have been enabled:
  rabbitmq_top

started 1 plugins.

RabbitMQ Top will be available in management Web UI to monitor and inspect Erlang processes.

RabbitMQ Top
RabbitMQ Top
RabbitMQ Top - process details
RabbitMQ Top - process details
RabbitMQ ETS Tables
RabbitMQ ETS Tables

RabbitMQ Top plugin provides an API that can be used to extract specific data.

# curl --silent --user user:password http://127.0.0.1:15672/api/top/[email protected] | jq '.processes[] | if (.name.queue_name == "add-changelog") then . else empty end' 
{
  "pid": "<0.5559.0>",
  "name": {
    "supertype": "queue",
    "type": "rabbit_amqqueue_process",
    "queue_name": "add-changelog",
    "vhost": "/"
  },
  "buffer_len": 0,
  "reduction_delta": 179,
  "memory": 2919832,
  "message_queue_len": 0,
  "reductions": 40052496,
  "status": "waiting"
}