Проверка RabbitMQ
Проверка RabbitMQ создаётся в дашборде, выполняет её агент на вашем хосте. Чекер вызывает aliveness-test HTTP-API плагина rabbitmq_management. Пароль не хранится на сервере: в конфиге задания используется плейсхолдер {{secret:имя}}, который агент подставляет локально из секции secrets: в agent.yaml.
Предварительные требования
-
Агент Flaree установлен и в статусе Online.
-
Тариф Pro: проверки брокеров недоступны на Starter.
-
Включён плагин управления и создан пользователь с тегом
monitoring:rabbitmq-plugins enable rabbitmq_managementrabbitmqctl add_user flaree_ro '<пароль>'rabbitmqctl set_user_tags flaree_ro monitoringrabbitmqctl set_permissions -p / flaree_ro "^aliveness-test$" "^amq\.default$" "^aliveness-test$"Aliveness-test публикует и читает тестовое сообщение в очереди
aliveness-test, поэтому права нужны именно на неё. -
Сетевая доступность от хоста агента до management-порта (по умолчанию TCP 15672).
Минимальная конфигурация
Локально, в /etc/flaree-agent/agent.yaml, сохраните пароль:
secrets:
rmq_pass: "<пароль>"
В дашборде: Агенты → ваш агент → Назначенные проверки → Новая проверка, тип rabbitmq, конфиг:
{
"managementUrl": "http://10.0.0.9:15672",
"user": "flaree_ro",
"password": "{{secret:rmq_pass}}"
}
Полная конфигурация
Все поля чекера:
| Ключ | Тип | По умолчанию | Описание |
|---|---|---|---|
managementUrl | string | — | Базовый URL management-API без завершающего /. Обязателен. |
user | string | — | Пользователь с тегом monitoring. Обязателен. |
password | string | — | Пароль или плейсхолдер {{secret:имя}} из secrets: в agent.yaml. Обязателен. |
Чекер запрашивает GET /api/aliveness-test/%2F (vhost /) с Basic-авторизацией и считает проверку успешной при HTTP 2xx и {"status":"ok"} в теле. Другой vhost сейчас не настраивается. Интервал и таймаут задаются в форме дашборда.
Проверка работы
- Выполните aliveness-test с хоста агента теми же реквизитами вручную.
- Убедитесь, что счётчик проверок с
type="rabbitmq"растёт на локальных метриках агента. - В дашборде компонент перейдёт в Operational в течение одного-двух интервалов.
curl -u flaree_ro:'<пароль>' http://10.0.0.9:15672/api/aliveness-test/%2F
# {"status":"ok"}
curl -s http://127.0.0.1:9090/metrics | grep 'type="rabbitmq"'
# flaree_agent_checks_total{type="rabbitmq",ok="true"} 4
Troubleshooting
- Данные не появляются — чек-лист нет данных.
missing_managementUrl/missing_user/missing_password— в JSON-конфиге задания нет соответствующего поля.- Ошибка
http_401— неверные реквизиты или у пользователя нет тегаmonitoring;{{secret:…}}с опечаткой в имени не подставляется и уходит как есть.
Связанные страницы: Kafka · Redis · концепция агента.