Как из 1С отследить сколько сообщений находиться в очереди на получение из rabbitmq


#1

Добрый день, Используем Очереди сообщений RMQ (1.6.0.0). При интеграции данной подсистемы, мы не нашли процедуру по отслеживанию количество сообщений в очереди, планируется реализация данной процедуры?


#2

Коротко да - планировалось. Но это вообще-то функция сервера и больше нужна для администрирования чем для организации логики.

Если Клиент.КоличествоСообщенийВочереди("тестовая-очередь") = 150 Тогда
   А тогда что ?

#3

свой монитор обмена делал через http api
https://pulse.mozilla.org/api/


#4

Недавно делал мониторинг размеров очередей RabbitMQ через связку Promethes+Grafana.
Вначале на RabbitMQ ставится вот этот вот плагин -
https://github.com/deadtrickster/prometheus_rabbitmq_exporter. С ним надо быть осторожным, хоть и заявлена поддержка RabbitMQ 3.6.х, на 3.6.6 он не поднимается и ложит весь сервер. Плюсом должен стоять management plugin.
Далее поднимается prometheus, в конфигах указывается target типа http://:15672/api/metrics. Плюсом в prometheus можно настроить алерты, чтобы при определённом количестве сообщений в очереди шли сообщения на почту. Да или любых других метрик. Этот плагин много чего умеет возвращать.
Далее поднимается Grafana, указывается Datasource сервер prometheus-а. И можно делать красивые графики :slight_smile:
Единственный минус - prometheus надо настраивать на периодичность метрик, и если он будет обращаться к ним раз в несколько десятков секунд, а сообщения будут читаться быстрее, то соответственно метрика размера очереди всегда будет нулевой.
Для удобства подняли promethes и grafana в kubernetes, это оказалось довольно быстро делается и удобно.