#spring-integration #spring-cloud-stream
#spring-интеграция #spring-cloud-stream
Вопрос:
Использование spring stream с rabbitmq binder. Мы хотим иметь показатель для наших размеров очереди. Каков наилучший способ реализовать метрику для размера очереди?
Я попытался использовать аннотацию @EnableIntegrationManagement … но я не вижу метрику счетчика наших выходных каналов
Ответ №1:
Если вы имеете в виду размер очереди (ов) в RabbitMQ broker, то в клиентском приложении нет ничего, что предоставляло бы это «из коробки». Почему вы ожидаете @EnableIntegrationManagement
помощи, особенно в отношении выходного канала?
Вы можете либо вызвать REST API с помощью плагина управления RabbitMQ, либо использовать RabbitAdmin
вызов and getQueueProperties(queueName)
.
Комментарии:
1. Как бы мне получить компонент rabbitadmin? Я вижу компонент rabbitadmin, когда я нажимаю на привод beans нашего приложения, но когда я пытаюсь автоматически подключить spring, но я получаю исключение not found.
2. IIRC, вы должны автоматически подключить его как
AmqpAdmin
.3. Да, с помощью AmqpAdmin исправлена автоматическая проводка. Теперь я получаю «Отказано в подключении (Connection refused)» . Мы работаем на PCF, и все волшебство подключения происходит за нас. Надеялся, что RabbitAdmin будет полностью настроен
4. исправьте это следующим образом: ‘@Configuration общедоступный класс RabbitmqConfig расширяет AbstractCloudConfig { @Bean общедоступный ConnectionFactory rbc() { возвращает ConnectionFactory().rabbitConnectionFactory(); } }’