RabbitMQ

Supported Versions

Currently supported versions are 3.6.15, 3.7.4, 3.7.5, 3.7.14 and 3.8.2.

Configuration

RabbitMQ

For the sensor to be able to collect metrics, enable the RabbitMQ Management plugin by running this command:

rabbitmq-plugins enable rabbitmq_management

Sensor

If the management interface requires configuration, you can configure it in the agent config file <agent_install_dir>/etc/instana/configuration.yaml:

com.instana.plugin.rabbitmq:
  user: 'guest'
  password: 'guest'

Metrics collection

Configuration data

  • Ports.
  • Version.
  • Erlang Version.
  • Node Name.
  • Nodes (count).
  • Queues (count).
  • Channels (count).

Performance metrics

RabbitMQ Sensor collects metrics every 5 seconds, because that’s the default sampling rate of the RabbitMQ Server.

“This configuration (which is the default) retains global data at a 5 second resolution (sampling happens every 5 seconds) for 10 minutes and 5 seconds, then at a 1 minute resolution for 1 hour and 1 minute, then at a 10 minute resolution for about 8 hours. It retains basic data at a 5 second resolution for 1 minute and 5 seconds, then at a 1 minute resolution for 1 hour, and detailed data only for 10 seconds. All three policies are mandatory, and must contain at least one retention pair {MaxAgeInSeconds, SampleEveryNSeconds}.” (https://www.rabbitmq.com/management.html#sample-retention)

Messages

Metric Description
Published Count of messages published (per 5 seconds).
Delivered Count of messages delivered (per 5 seconds).
Acknowledged Number of messages delivered to clients and acknowledged (per 5 seconds).

Messages Status

Metric Description
Ready Number of messages ready to be delivered to clients.
Unacknowledged Number of messages delivered to clients but not yet acknowledged.
Total Total number of messages in this queue.
Ready Rate Number of messages per second ready to be delivered to clients.
Unacknowledged Rate Number of messages per second delivered to clients but not yet acknowledged.
Total Rate Count of the total messages per second in the queue.

Overview

Metric Description
Consumers Number of consumers.
Connections Number of current connections to RabbitMQ server.

Nodes (metrics per node)

Metric Description
Used file descriptors Count of file descriptors in use.
Total file descriptors Count of all file descriptors available.
Erlang processes in use Erlang processes in use.
Maximum number of Erlang processes Maximum number of Erlang processes.
Used memory Used memory.
Memory limit Maximum memory available.
Disk alarm threshold An alarm will be triggered if the amount of free disk space drops below a configured limit.
Disk free space Disk free space.

Queues (metrics per queue)

By default, queue monitoring is not enabled. To enable in-depth metric monitoring, inform the Agent about the queues you want to monitor (up to 1000 queues). You can configure queues for monitoring in the agent config file <agent_install_dir>/etc/instana/configuration.yaml:

com.instana.plugin.rabbitmq:
  monitorQueues:
    - queue: instana1 #name of the queue
      vhost: / #name of the vhost, default is '/'
    - queue: stan1 #name of the queue
      vhost: / #name of the vhost, default is '/'
Metric Description
Messages ready Number of messages ready to be delivered to clients.
Messages unacknowledged Number of messages delivered to clients but not yet acknowledged.
Messages total Number of all messages in the queue.

Health signatures

For each sensor, there is a curated knowledgebase of health signatures that are evaluated continuously against the incoming metrics and are used to raise issues or incidents depending on user impact.

Built-in events trigger issues or incidents based on failing health signatures on entities, and custom events trigger issues or incidents based on the thresholds of an individual metric of any given entity.

For information about built-events for the RabbitMQ Cluster, RabbitMQ Server, RabbitMQ Nodes, and RabbitMQ Queues, see the Built-in events reference.

Tracing

Automatic tracing of all requests. For more information, see Tracing - supported technologies.