Как получить статус ссылки федерации rabbitmq с помощью HTTP-вызовов rabbitmq

Кто-нибудь знает, как я могу получить статус ссылок федерации, используя HTTP-API RabbitMQ? Я могу получить определение федерации в восходящем направлении на следующем примере, но не могу найти способ получить ее статус.

Вызов - http://%5Bhostname%5D:15672/api/parameters/federation-upstream возвращает меня

[{"Значение":{"URI": [ "AMQP: // ПОЛЬЗОВАТЕЛЯ: ПАРОЛЬ @HOSTNAME:4003/ ВХост"],"доверие-идентификатор пользователя" ложь "обмен":"anurag.fed"},"ВХост": "ВХост","компонент": "федерации-вверх","название": "вверх по течению кормили"}]

Официальная документация гласит, что статус ссылки может контролироваться rabbitmqctl или GUI, но нигде не упоминается HTTP apis. Значит ли это, что rabbitmq не имеет такой возможности в API? Может ли кто-нибудь помочь, пожалуйста?

https://www.rabbitmq.com/federation-reference.html"Вы можете отслеживать состояние ссылок федерации, используя rabbitmqctl и плагин управления".

Используемая версия RabbitMQ: 3.6.8

Спасибо анураг

1 ответ

Пользовательский интерфейс управления RabbitMQ использует вызовы REST для извлечения данных, и у вас есть возможность отслеживать эти вызовы:

Включить rabbitmq_federation_management плагин. Через веб-интерфейс перейдите на страницу, показывающую статус, который вы ищете. Затем откройте инструменты разработчика в своем веб-браузере, чтобы отслеживать сетевые запросы и ответы. Вы увидите запросы к различным /api Ресурсы REST - одним из них будет то, что вы можете использовать в своем приложении.


ПРИМЕЧАНИЕ: команда RabbitMQ контролирует rabbitmq-users список рассылки и только иногда отвечает на вопросы по Stackru.

Вы можете вызвать http://%5Bhostname%5D:15672/api/federation-links, чтобы получить json, содержащий поле состояния, например:[ { "node": "rabbit@hostname", "exchange": "exchange_name", "upstream_exchange": "exchange_name", "type": "exchange", "vhost": "/", "upstream": "upstream_name", "id": "blablabla", "status": "running", "local_connection": "<rabbit@hostname9>", "uri": "amqp://hostname:5672/%2f", "timestamp": "2019-03-15 13:57:57", }

Другие вопросы по тегам