Показатель размера очереди

#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(); } }’