RabbitMQ
This integration is enabled by default.
Versions supported: > v3.8
This integration is out-of-the-box, so it doesn’t require any exporter.
This integration has 41 metrics.
Timeseries generated: 730 series per instance
List of Alerts
Alert | Description | Format |
---|---|---|
[RabbitMQ] Cluster Operator Unavailable Replicas | There are kube_pod_names that are either running but not yet available or kube_pod_names that still have not been created. | Prometheus |
[RabbitMQ] Insufficient Established Erlang Distribution Links | Insuffient establised erland distribution links | Prometheus |
[RabbitMQ] Low Disk Watermark Predicted | The predicted free disk space in 24 hours from now is low | Prometheus |
[RabbitMQ] High Connection Churn | There are a high connection churn | Prometheus |
[RabbitMQ] No MajorityOfNodesReady | There are so many nodes not ready | Prometheus |
[RabbitMQ] Persistent Volume Missing | There is at least one pvc not bound | Prometheus |
[RabbitMQ] Unroutable Messages | There were unroutable message within the last 5 minutes in RabbitMQ cluster | Prometheus |
[RabbitMQ] File Descriptors Near Limit | The file descriptors are near to the limit | Prometheus |
[RabbitMQ] Container Restarts | Over the last 10 minutes a rabbitmq container was restarted | Prometheus |
[RabbitMQ] TCP Sockets Near Limit | The TCP sockets are near to the limit | Prometheus |
List of Dashboards
Rabbitmq Usage
The dashboard provides information on the usage of each queues, channels and connections.
Rabbitmq Overview
The dashboard provides information on the nodes, queues and erlang of a RabbitMQ cluster.
List of Metrics
Metric name |
---|
erlang_vm_dist_node_state |
kube_deployment_status_replicas_unavailable |
kube_kube_pod_name_container_status_restarts_total |
kube_persistentvolumeclaim_status_phase |
kube_statefulset_replicas |
kube_statefulset_status_replicas_ready |
rabbitmq_build_info |
rabbitmq_channel_consumers |
rabbitmq_channel_get_ack_total |
rabbitmq_channel_get_empty_total |
rabbitmq_channel_get_total |
rabbitmq_channel_messages_acked_total |
rabbitmq_channel_messages_confirmed_total |
rabbitmq_channel_messages_delivered_ack_total |
rabbitmq_channel_messages_delivered_total |
rabbitmq_channel_messages_published_total |
rabbitmq_channel_messages_redelivered_total |
rabbitmq_channel_messages_unconfirmed |
rabbitmq_channel_messages_unroutable_dropped_total |
rabbitmq_channel_messages_unroutable_returned_total |
rabbitmq_channels |
rabbitmq_channels_closed_total |
rabbitmq_channels_opened_total |
rabbitmq_connections |
rabbitmq_connections_closed_total |
rabbitmq_connections_opened_total |
rabbitmq_disk_space_available_bytes |
rabbitmq_disk_space_available_limit_bytes |
rabbitmq_process_max_fds |
rabbitmq_process_max_tcp_sockets |
rabbitmq_process_open_fds |
rabbitmq_process_open_tcp_sockets |
rabbitmq_process_resident_memory_bytes |
rabbitmq_queue_messages_published_total |
rabbitmq_queue_messages_ready |
rabbitmq_queue_messages_unacked |
rabbitmq_queues |
rabbitmq_queues_created_total |
rabbitmq_queues_declared_total |
rabbitmq_queues_deleted_total |
rabbitmq_resident_memory_limit_bytes |
Prerequisites
Enable Prometheus Metrics
Rabbitmq instruments Prometheus metrics and annotates the metrics API pod with Prometheus annotations.
Make sure that Prometheus metrics are activated. If they are not, activate the plugin using this command inside of the rabbitmq container:
rabbitmq-plugins enable rabbitmq_prometheus
Installation
Installing an exporter is not required for this integration.
Agent Configuration
The default agent job for this integration is as follows:
- job_name: rabbitmq-default
tls_config:
insecure_skip_verify: true
kubernetes_sd_configs:
- role: pod
relabel_configs:
- action: keep
source_labels: [__meta_kubernetes_pod_host_ip]
regex: __HOSTIPS__
- action: replace
source_labels:
- __meta_kubernetes_pod_container_name
- __meta_kubernetes_pod_annotation_promcat_sysdig_com_integration_type
regex: (rabbitmq);(.{0}$)
replacement: $1
target_label: __meta_kubernetes_pod_annotation_promcat_sysdig_com_integration_type
- action: keep
source_labels:
- __meta_kubernetes_pod_annotation_promcat_sysdig_com_integration_type
regex: "rabbitmq"
- source_labels: [__meta_kubernetes_pod_phase]
action: keep
regex: Running
- action: replace
source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scheme]
target_label: __scheme__
regex: (https?)
- action: replace
source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
regex: ([^:]+)(?::\d+)?;(\d+)
replacement: $1:$2
target_label: __address__
- action: replace
source_labels: [__meta_kubernetes_pod_uid]
target_label: sysdig_k8s_pod_uid
- action: replace
source_labels: [__meta_kubernetes_pod_container_name]
target_label: sysdig_k8s_pod_container_name
metric_relabel_configs:
- source_labels: [__name__]
regex: (erlang_vm_dist_node_state|rabbitmq_build_info|rabbitmq_channel_consumers|rabbitmq_channel_get_ack_total|rabbitmq_channel_get_empty_total|rabbitmq_channel_get_total|rabbitmq_channel_messages_acked_total|rabbitmq_channel_messages_confirmed_total|rabbitmq_channel_messages_delivered_ack_total|rabbitmq_channel_messages_delivered_total|rabbitmq_channel_messages_published_total|rabbitmq_channel_messages_redelivered_total|rabbitmq_channel_messages_unconfirmed|rabbitmq_channel_messages_unroutable_dropped_total|rabbitmq_channel_messages_unroutable_returned_total|rabbitmq_channels|rabbitmq_channels_closed_total|rabbitmq_channels_opened_total|rabbitmq_connections|rabbitmq_connections_closed_total|rabbitmq_connections_opened_total|rabbitmq_disk_space_available_bytes|rabbitmq_disk_space_available_limit_bytes|rabbitmq_process_max_fds|rabbitmq_process_max_tcp_sockets|rabbitmq_process_open_fds|rabbitmq_process_open_tcp_sockets|rabbitmq_process_resident_memory_bytes|rabbitmq_queue_messages_published_total|rabbitmq_queue_messages_ready|rabbitmq_queue_messages_unacked|rabbitmq_queues|rabbitmq_queues_created_total|rabbitmq_queues_declared_total|rabbitmq_queues_deleted_total|rabbitmq_resident_memory_limit_bytes)
action: keep
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.