Bird
Raised Fist0
RabbitMQdevops~5 mins

Prometheus and Grafana integration in RabbitMQ - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is Prometheus used for in monitoring RabbitMQ?
Prometheus collects and stores metrics from RabbitMQ, such as message rates and queue lengths, to help monitor its performance and health.
Click to reveal answer
beginner
What role does Grafana play when integrated with Prometheus for RabbitMQ?
Grafana visualizes the metrics collected by Prometheus, creating dashboards that show RabbitMQ's status and trends in an easy-to-understand way.
Click to reveal answer
intermediate
How does Prometheus get metrics from RabbitMQ?
Prometheus scrapes metrics from RabbitMQ's Prometheus plugin endpoint, which exposes RabbitMQ metrics in a format Prometheus understands.
Click to reveal answer
beginner
What is a common first step to enable Prometheus monitoring on RabbitMQ?
Enable the RabbitMQ Prometheus plugin by running the command: rabbitmq-plugins enable rabbitmq_prometheus.
Click to reveal answer
beginner
Why is it useful to combine Prometheus and Grafana for RabbitMQ monitoring?
Prometheus collects detailed metrics, and Grafana turns those metrics into visual dashboards, making it easier to spot issues and understand RabbitMQ's behavior over time.
Click to reveal answer
Which RabbitMQ plugin must be enabled to expose metrics to Prometheus?
Arabbitmq_management
Brabbitmq_prometheus
Crabbitmq_stomp
Drabbitmq_federation
What does Grafana primarily do with Prometheus data?
ASends alerts directly to RabbitMQ
BCollects metrics from RabbitMQ
CStores metrics long-term
DVisualizes metrics in dashboards
How does Prometheus get RabbitMQ metrics?
ABy pushing metrics to RabbitMQ
BBy reading RabbitMQ logs
CBy scraping the metrics endpoint exposed by RabbitMQ
DBy connecting to RabbitMQ's database
Which command enables the Prometheus plugin in RabbitMQ?
Arabbitmq-plugins enable rabbitmq_prometheus
Brabbitmqctl start_prometheus
Crabbitmq-server --enable-prometheus
Drabbitmq-manage enable prometheus
What kind of data does Prometheus collect from RabbitMQ?
AMetrics like message rates and queue sizes
BUser passwords
CRabbitMQ configuration files
DRabbitMQ source code
Explain the steps to integrate Prometheus and Grafana for monitoring RabbitMQ.
Think about enabling plugins, configuring data collection, and visualization.
You got /4 concepts.
    Describe why monitoring RabbitMQ with Prometheus and Grafana is helpful for system reliability.
    Consider how monitoring helps prevent problems.
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the first step to enable monitoring of RabbitMQ metrics using Prometheus?
      easy
      A. Configure Prometheus scrape interval
      B. Enable the RabbitMQ Prometheus plugin
      C. Install Grafana dashboard
      D. Restart the RabbitMQ server

      Solution

      1. Step 1: Enable RabbitMQ Prometheus plugin

        This plugin exposes RabbitMQ metrics in a format Prometheus can scrape.
      2. Step 2: Confirm plugin activation

        Use rabbitmq-plugins enable rabbitmq_prometheus to activate it.
      3. Final Answer:

        Enable the RabbitMQ Prometheus plugin -> Option B
      4. Quick Check:

        Enable plugin = C [OK]
      Hint: Start by enabling the Prometheus plugin in RabbitMQ [OK]
      Common Mistakes:
      • Trying to configure Prometheus before enabling the plugin
      • Assuming Grafana setup is the first step
      • Restarting RabbitMQ without enabling the plugin
      2. Which of the following is the correct Prometheus scrape configuration snippet to monitor RabbitMQ metrics?
      easy
      A. scrape_configs: - job_name: 'rabbitmq' static_configs: - targets: ['localhost:15692']
      B. scrape_configs: - job_name: 'rabbitmq' static_configs: - targets: ['localhost:5672']
      C. scrape_configs: - job_name: 'rabbitmq' static_configs: - targets: ['localhost:15672']
      D. scrape_configs: - job_name: 'rabbitmq' static_configs: - targets: ['localhost:9090']

      Solution

      1. Step 1: Identify RabbitMQ Prometheus metrics port

        The Prometheus plugin exposes metrics on port 15692 by default.
      2. Step 2: Verify scrape target in Prometheus config

        The target must be localhost:15692 to scrape RabbitMQ metrics correctly.
      3. Final Answer:

        scrape_configs with target localhost:15692 -> Option A
      4. Quick Check:

        Port 15692 for Prometheus metrics = A [OK]
      Hint: Use port 15692 for RabbitMQ Prometheus metrics scrape [OK]
      Common Mistakes:
      • Using RabbitMQ AMQP port 5672 instead of metrics port
      • Using RabbitMQ management port 15672 incorrectly
      • Using Prometheus default port 9090 as target
      3. Given this Prometheus scrape config snippet, what will be the result when Prometheus scrapes RabbitMQ metrics?
      scrape_configs:
        - job_name: 'rabbitmq'
          static_configs:
            - targets: ['rabbitmq-server:15692']
      medium
      A. Prometheus will fail due to wrong port
      B. Prometheus will ignore this job
      C. Prometheus will collect metrics but with errors
      D. Prometheus will collect RabbitMQ metrics successfully

      Solution

      1. Step 1: Check target hostname and port

        The target rabbitmq-server:15692 is valid if DNS resolves and port 15692 is open.
      2. Step 2: Confirm Prometheus plugin exposes metrics on port 15692

        This matches the default port for RabbitMQ Prometheus plugin metrics.
      3. Final Answer:

        Prometheus will collect RabbitMQ metrics successfully -> Option D
      4. Quick Check:

        Correct hostname and port = B [OK]
      Hint: Correct hostname and port means successful scrape [OK]
      Common Mistakes:
      • Assuming port 15692 is incorrect
      • Ignoring hostname resolution issues
      • Confusing management port with metrics port
      4. You configured Prometheus to scrape RabbitMQ metrics but see no data in Grafana dashboards. What is the most likely cause?
      medium
      A. Prometheus scrape interval is too long
      B. Grafana is not installed
      C. RabbitMQ Prometheus plugin is not enabled
      D. RabbitMQ server is down

      Solution

      1. Step 1: Check if RabbitMQ Prometheus plugin is enabled

        If the plugin is disabled, no metrics are exposed for Prometheus to scrape.
      2. Step 2: Confirm plugin activation with rabbitmq-plugins list

        This command shows enabled plugins; absence of rabbitmq_prometheus means no metrics.
      3. Final Answer:

        RabbitMQ Prometheus plugin is not enabled -> Option C
      4. Quick Check:

        Plugin disabled = no metrics = A [OK]
      Hint: Check plugin enabled before blaming Grafana or Prometheus [OK]
      Common Mistakes:
      • Assuming Grafana installation causes no data
      • Blaming scrape interval without checking metrics exposure
      • Ignoring RabbitMQ server status
      5. You want to create a Grafana dashboard to monitor RabbitMQ queue length over time. Which data source and query setup is correct?
      hard
      A. Use Prometheus data source; query rabbitmq_queue_messages_ready
      B. Use RabbitMQ data source; query queue_length
      C. Use Prometheus data source; query rabbitmq_queue_consumers
      D. Use Grafana Loki data source; query queue_length_logs

      Solution

      1. Step 1: Identify correct data source for RabbitMQ metrics

        Prometheus is used to collect and store RabbitMQ metrics exposed by the plugin.
      2. Step 2: Select the metric for queue length

        rabbitmq_queue_messages_ready represents the number of messages ready in queues.
      3. Final Answer:

        Use Prometheus data source; query rabbitmq_queue_messages_ready -> Option A
      4. Quick Check:

        Prometheus + rabbitmq_queue_messages_ready = D [OK]
      Hint: Use Prometheus and metric rabbitmq_queue_messages_ready for queue length [OK]
      Common Mistakes:
      • Using RabbitMQ data source which is not standard for Grafana
      • Querying consumers count instead of queue length
      • Using Loki which is for logs, not metrics
      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