Проведите прослушивание всех обменов на сервере RabbitMQ - PullRequest
0 голосов
/ 19 сентября 2019

Я хочу создать пользовательский интерфейс, чтобы видеть все сообщения, которые проходят через все обмены на сервере RabbitMQ (конечно, кроме консоли управления).

Я также использую Mass Transit поверх кролика, но яне уверен, что это имеет значение.

Возможно ли это вообще без необходимости кодировать потребителя для каждого из них по одному?Если да, то какие отправные точки?

Ответы [ 2 ]

1 голос
/ 19 сентября 2019

Обмен сообщениями, используемый для публикации, а также отправки, связан с обменом, имя которого совпадает с именем очереди доставки сообщений.Таким образом, вы можете привязать свой собственный обмен проводными касаниями в брокере к любому обмену очередями и прослушать сообщения в другой очереди по вашему выбору.

Вы можете просмотреть макет топологии RabbitMQ в документации .

Это было специально сделано для облегчения прослушивания любой конечной точки, так как все сообщения проходят через единый разветвленный обмен.

1 голос
/ 19 сентября 2019

Это довольно широкий вопрос, потому что не совсем очевидно, что вы подразумеваете под «видеть», но независимо от того, вы можете создать наблюдателя в своем автобусе.Это задокументировано здесь, и я думаю, что это довольно просто: https://masstransit -project.com / MassTransit / Использование / Наблюдатели.html

В обозревателе вы можете обрабатывать различные события, когда любой сообщение попадает на шину сообщений MT и выполняет какую-либо операцию (например, распечатывает сообщение, добавляет протоколирование, метрики и т. Д.).Если у вас есть сценарий микросервиса, было бы неплохо добавить наблюдателя в общую библиотеку и добавить его в шину в ваших отдельных приложениях.

...