Bird
Raised Fist0
RabbitMQdevops~20 mins

Management plugin and HTTP API in RabbitMQ - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
RabbitMQ Management Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
💻 Command Output
intermediate
1:30remaining
Check if RabbitMQ management plugin is enabled
You run the command rabbitmq-plugins list on your server. Which output line confirms the management plugin is enabled?
RabbitMQ
rabbitmq-plugins list
A[ ] rabbitmq_management_agent
B[ ] rabbitmq_management
C[E] rabbitmq_web_dispatch
D[E] rabbitmq_management
Attempts:
2 left
💡 Hint
Look for the '[E]' mark which means enabled.
🧠 Conceptual
intermediate
1:30remaining
Purpose of RabbitMQ HTTP API
What is the main purpose of the RabbitMQ HTTP API provided by the management plugin?
ATo replace the AMQP protocol for all messaging
BTo send messages directly to queues using HTTP POST requests
CTo allow programmatic access to monitor and manage RabbitMQ via HTTP requests
DTo configure RabbitMQ server settings only via command line
Attempts:
2 left
💡 Hint
Think about what HTTP APIs usually do for services.
❓ Configuration
advanced
2:00remaining
Enable RabbitMQ management plugin on a server
Which command correctly enables the RabbitMQ management plugin on a server?
Arabbitmq-plugins enable rabbitmq_management
Brabbitmqctl enable_plugin rabbitmq_management
Crabbitmq-plugins start rabbitmq_management
Drabbitmqctl start_plugin rabbitmq_management
Attempts:
2 left
💡 Hint
The command uses 'rabbitmq-plugins' and 'enable'.
❓ Troubleshoot
advanced
2:00remaining
HTTP API returns 401 Unauthorized error
You try to access the RabbitMQ HTTP API but get a 401 Unauthorized error. What is the most likely cause?
AYou did not provide valid username and password for HTTP API access
BThe RabbitMQ server is not running
CThe management plugin is disabled
DThe HTTP API endpoint URL is incorrect
Attempts:
2 left
💡 Hint
401 means unauthorized access.
🔀 Workflow
expert
3:00remaining
Sequence to monitor queue message count via HTTP API
What is the correct sequence of steps to monitor the message count of a queue named 'task_queue' using the RabbitMQ HTTP API?
A3,2,1,4
B1,2,3,4
C1,3,2,4
D2,1,3,4
Attempts:
2 left
💡 Hint
You must enable plugin before using API and authenticate before requesting data.

Practice

(1/5)
1. What is the primary purpose of the RabbitMQ management plugin?
easy
A. To backup RabbitMQ data
B. To improve message delivery speed
C. To provide a web UI and HTTP API for managing RabbitMQ
D. To encrypt messages automatically

Solution

  1. Step 1: Understand the management plugin role

    The management plugin adds a web interface and HTTP API to control RabbitMQ easily.
  2. Step 2: Compare options with plugin features

    Only To provide a web UI and HTTP API for managing RabbitMQ matches the plugin's purpose; others describe unrelated features.
  3. Final Answer:

    To provide a web UI and HTTP API for managing RabbitMQ -> Option C
  4. Quick Check:

    Management plugin = Web UI + HTTP API [OK]
Hint: Management plugin = web UI + API for RabbitMQ control [OK]
Common Mistakes:
  • Confusing management plugin with performance features
  • Thinking it encrypts messages automatically
  • Assuming it handles backups
2. Which command correctly enables the RabbitMQ management plugin?
easy
A. rabbitmq-plugins enable rabbitmq_management
B. rabbitmqctl enable_management
C. rabbitmq-plugins start management
D. rabbitmq-management enable

Solution

  1. Step 1: Recall the correct command syntax

    The official command to enable plugins is 'rabbitmq-plugins enable <plugin_name>'.
  2. Step 2: Match the plugin name

    The management plugin is named 'rabbitmq_management', so the full command is 'rabbitmq-plugins enable rabbitmq_management'.
  3. Final Answer:

    rabbitmq-plugins enable rabbitmq_management -> Option A
  4. Quick Check:

    Enable plugin = rabbitmq-plugins enable rabbitmq_management [OK]
Hint: Use 'rabbitmq-plugins enable rabbitmq_management' to enable plugin [OK]
Common Mistakes:
  • Using rabbitmqctl instead of rabbitmq-plugins
  • Wrong plugin name or command syntax
  • Trying to start plugin instead of enabling
3. After enabling the management plugin, which port is the default for accessing the RabbitMQ web UI?
medium
A. 5672
B. 15672
C. 8080
D. 4369

Solution

  1. Step 1: Identify default ports used by RabbitMQ components

    Port 5672 is for AMQP protocol, 4369 for Erlang distribution, 8080 is common for web apps but not default here.
  2. Step 2: Recall management plugin default port

    The management plugin's web UI listens on port 15672 by default.
  3. Final Answer:

    15672 -> Option B
  4. Quick Check:

    Management UI port = 15672 [OK]
Hint: Management UI default port is 15672, not AMQP port 5672 [OK]
Common Mistakes:
  • Confusing AMQP port 5672 with management UI port
  • Assuming common web port 8080 is used
  • Mixing Erlang port 4369 with HTTP API port
4. You try to access the RabbitMQ management HTTP API but get a 401 Unauthorized error. What is the most likely cause?
medium
A. The HTTP API port is blocked by firewall
B. The management plugin is not enabled
C. RabbitMQ server is not running
D. Incorrect username or password for basic authentication

Solution

  1. Step 1: Understand 401 Unauthorized meaning

    A 401 error means authentication failed, usually due to wrong credentials.
  2. Step 2: Check other options

    If the plugin was not enabled, the API wouldn't respond or connection would fail, not 401. Server down causes no response. Firewall blocks cause timeout, not 401.
  3. Final Answer:

    Incorrect username or password for basic authentication -> Option D
  4. Quick Check:

    401 Unauthorized = Bad credentials [OK]
Hint: 401 error means wrong username/password, not plugin or server down [OK]
Common Mistakes:
  • Assuming plugin is disabled when getting 401
  • Confusing 401 with connection refused or timeout
  • Ignoring authentication in HTTP API
5. You want to list all queues using the RabbitMQ HTTP API. Which HTTP method and endpoint should you use with basic authentication?
hard
A. GET /api/queues
B. POST /api/queues
C. GET /api/list_queues
D. PUT /api/queues

Solution

  1. Step 1: Identify HTTP method for retrieving data

    GET is used to fetch or list resources; POST and PUT modify data.
  2. Step 2: Recall correct API endpoint

    The RabbitMQ management HTTP API uses '/api/queues' to list all queues.
  3. Final Answer:

    GET /api/queues -> Option A
  4. Quick Check:

    List queues = GET /api/queues [OK]
Hint: Use GET method on /api/queues to list queues [OK]
Common Mistakes:
  • Using POST or PUT instead of GET for listing
  • Wrong endpoint like /api/list_queues
  • Forgetting basic authentication
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard