awesome-prometheus-alerts/dist/rules/rabbitmq/kbudde-rabbitmq-exporter.yml
2023-10-13 15:10:33 +00:00

104 lines
3.9 KiB
YAML

groups:
- name: KbuddeRabbitmqExporter
rules:
- alert: RabbitmqDown
expr: 'rabbitmq_up == 0'
for: 0m
labels:
severity: critical
annotations:
summary: RabbitMQ down (instance {{ $labels.instance }})
description: "RabbitMQ node down\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
- alert: RabbitmqClusterDown
expr: 'sum(rabbitmq_running) < 3'
for: 0m
labels:
severity: critical
annotations:
summary: RabbitMQ cluster down (instance {{ $labels.instance }})
description: "Less than 3 nodes running in RabbitMQ cluster\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
- alert: RabbitmqClusterPartition
expr: 'rabbitmq_partitions > 0'
for: 0m
labels:
severity: critical
annotations:
summary: RabbitMQ cluster partition (instance {{ $labels.instance }})
description: "Cluster partition\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
- alert: RabbitmqOutOfMemory
expr: 'rabbitmq_node_mem_used / rabbitmq_node_mem_limit * 100 > 90'
for: 2m
labels:
severity: warning
annotations:
summary: RabbitMQ out of memory (instance {{ $labels.instance }})
description: "Memory available for RabbmitMQ is low (< 10%)\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
- alert: RabbitmqTooManyConnections
expr: 'rabbitmq_connectionsTotal > 1000'
for: 2m
labels:
severity: warning
annotations:
summary: RabbitMQ too many connections (instance {{ $labels.instance }})
description: "RabbitMQ instance has too many connections (> 1000)\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
- alert: RabbitmqDeadLetterQueueFillingUp
expr: 'rabbitmq_queue_messages{queue="my-dead-letter-queue"} > 10'
for: 1m
labels:
severity: warning
annotations:
summary: RabbitMQ dead letter queue filling up (instance {{ $labels.instance }})
description: "Dead letter queue is filling up (> 10 msgs)\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
- alert: RabbitmqTooManyMessagesInQueue
expr: 'rabbitmq_queue_messages_ready{queue="my-queue"} > 1000'
for: 2m
labels:
severity: warning
annotations:
summary: RabbitMQ too many messages in queue (instance {{ $labels.instance }})
description: "Queue is filling up (> 1000 msgs)\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
- alert: RabbitmqSlowQueueConsuming
expr: 'time() - rabbitmq_queue_head_message_timestamp{queue="my-queue"} > 60'
for: 2m
labels:
severity: warning
annotations:
summary: RabbitMQ slow queue consuming (instance {{ $labels.instance }})
description: "Queue messages are consumed slowly (> 60s)\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
- alert: RabbitmqNoConsumer
expr: 'rabbitmq_queue_consumers == 0'
for: 1m
labels:
severity: critical
annotations:
summary: RabbitMQ no consumer (instance {{ $labels.instance }})
description: "Queue has no consumer\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
- alert: RabbitmqTooManyConsumers
expr: 'rabbitmq_queue_consumers{queue="my-queue"} > 1'
for: 0m
labels:
severity: critical
annotations:
summary: RabbitMQ too many consumers (instance {{ $labels.instance }})
description: "Queue should have only 1 consumer\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
- alert: RabbitmqUnactiveExchange
expr: 'rate(rabbitmq_exchange_messages_published_in_total{exchange="my-exchange"}[1m]) < 5'
for: 2m
labels:
severity: warning
annotations:
summary: RabbitMQ unactive exchange (instance {{ $labels.instance }})
description: "Exchange receive less than 5 msgs per second\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"