Как я контролирую события жизненного цикла обмена RabbitMQ
Я работаю с набором продуктов, который использует RabbitMQ в качестве серверной части для обмена сообщениями по служебной шине. Многие из клиентов используют программное обеспечение (NeuronESB), которое должно автоматически настраивать обмены, очереди и каналы по мере необходимости. Где-то в системе биржи в Rabbit удаляются и не восстанавливаются, что приводит к неожиданным проблемам. Из-за размера системы и характера закрытого источника, по крайней мере, одного из клиентов служебной шины, проверка кода была неудачной при определении источника удаления этих обменов.
Я попытался использовать функциональность Firehose в Rabbit, но она обеспечивает только сообщения, отправляемые через Rabbit, а не внутренние действия, которые мне нужны.
Какие методы доступны для регистрации создания и удаления бирж в RabbitMQ? В идеале я хотел бы знать дату, время и IP-адрес клиента, удаляющего файл, но даже получение даты и времени позволило бы мне сузить поиск в журналах, чтобы помочь найти нарушителя.
1 ответ
Попробуйте подключить плагин Events Exchange, который должен помочь.
Если по какой-то причине не работает, последнее средство, о котором я могу подумать:
Получите тестовую среду с меньшим количеством клиентов / сообщений, если ваше приложение занято, а затем проанализируйте свой трафик с wireshark
(он может понять, amqp), чтобы отфильтровать запросы на удаление обмена.