...
Code Block | ||
---|---|---|
| ||
... hydra: command_queues: # <Очередь для приёма команд>: <Очередь для отправки результата> - 'hydra_commands': 'hydra_command_results' - 'hydra_commands_reset-switch-port': 'hydra_command_results' ... |
Безусловное автоматическое удаление сообщений из очередей
...
Задача
Провижининг используется только для формирования команд по конфигурациям. RADIUS-взаимодействия нет — агент HARD не установлен. Сообщения с профилями и привязками оборудования накапливаются в очередях Oracle, напрасно занимая бесценное место в табличных пространствах.
Бизнес-хуки Гидры не используются. Сообщения копятся в очереди Oracle, занимая место в табличных пространствах
Решение
Настроить в AcitveMQ получение этих сообщений, но без сохранения их в самом брокере. Для этого в конфигурации ActiveMQ можно использовать директиву <stop/>
, прерывающую маршрутизацию:
Code Block | ||||
---|---|---|---|---|
| ||||
... <camelContext xmlns="http://camel.apache.org/schema/spring" id="camel"> <!-- Очередь команд провижининга AQ_BI_HYDRA_COMMANDS --> <route> <from uri="oracleTopic:topic:AIS_NET.HP_COMMANDS_1?clientId=ActiveMQ&durableSubscriptionName=HP"/> <to uri="activemq:queue:hydra_commands_1"/> </route> <!-- Очередь результатов выполнения команд провижининга AQ_BI_HYDRA_COM_RES --> <route> <from uri="activemq:queue:hydra_command_results_1"/> <to uri="oracleTopic:topic:AIS_NET.HP_COM_RES_1?clientId=ActiveMQ&durableSubscriptionName=HP"/> </route> <!-- Очередь профилей AQ_BI_HYDRA_PROFILES --> <route> <from uri="oracleTopic:topic:AIS_NET.HP_PROFILES_1?clientId=ActiveMQ&durableSubscriptionName=HP"/> <stop/> <to uri="activemq:queue:hydra_profiles_1"/> </route> <!-- Очередь привязок оборудования AQ_BI_HYDRA_EQUIP_BINDS --> <route> <from uri="oracleTopic:topic:AIS_NET.HP_EQUIPMENT_BINDS_1?clientId=ActiveMQ&durableSubscriptionName=HP"/> <stop/> <to uri="activemq:queue:hydra_equipment_binds_1"/> </route> <!-- Очередь сообщений бизнес-хуков AQ_BI_HYDRA_MESSAGES --> <route> <from uri="oracleTopic:topic:AIS_NET.HYDRA_MESSAGES?clientId=ActiveMQ&durableSubscriptionName=HP"/> <stop/> </route> </camelContext> ... |
Директиву to
из маршрута удалять не стоит: при необходимости «включения» достаточно будет закомментировать или удалить строку с stop
.
После этого все сообщения из очереди Oracle будут разбираться и удаляться исходя из RETENTION
в ALL_QUEUES
.
...