Как выстроить очередь Артемиды из командной строки?
Есть ли способ очистить очереди Артемиды? Я уже очистил тогда, идя cd data/paging
, Это место, где я установил свой брокер Artemis.
Есть пользовательский интерфейс haw.io
из Артемиды, хотя я удалил все файлы в каталоге подкачки, он все равно показывает сообщение в пользовательском интерфейсе, которого в правильном случае там не должно быть.
Пожалуйста, предложите.
2 ответа
Из командной строки в папке bin вашего экземпляра брокера:
artemis queue delete --user user --password password --name queue-name
Artemis Broker предоставляет API-интерфейс управления REST, который пользователи могут использовать для чтения и изменения многих параметров посредника во время выполнения. Следовательно, можно очистить очередь из командной строки с помощью командной строки:
curl -X POST -H "Content-Type: application/json" -d '{ "type": "EXEC", "mbean": "org.apache.activemq.artemis:address=\"test.performance.queue\",broker=\"0.0.0.0\",component=addresses,queue=\"test.performance.queue\",routing-type=\"anycast\",subcomponent=queues", "operation": "removeMessages(java.lang.String)", "arguments": [ "" ] }' http://localhost:8161/jolokia/exec | jq .
В приведенном выше примере я очищаю содержимое очереди с именем test.performance.queue
на примере брокера 0.0.0.0
, Эти параметры должны быть скорректированы для конкретного случая.
Obs: обратите внимание, что я использовал jq .
просто чтобы сделать ответ JSON красивее (вам не нужно делать это, если вам не нужен ответ):
{
"request": {
"mbean": "org.apache.activemq.artemis:address=\"test.performance.queue\",broker=\"0.0.0.0\",component=addresses,queue=\"test.performance.queue\",routing-type=\"anycast\",subcomponent=queues",
"arguments": [
""
],
"type": "exec",
"operation": "removeMessages(java.lang.String)"
},
"value": 13001,
"timestamp": 1503740691,
"status": 200
}
Другой возможностью может быть использование инструмента BMIC, который предоставляет доступ к нескольким API, используемым для управления ActiveMQ 6 и брокерами Artemis (отказ от ответственности: я поддерживаю инструмент). Используя это, вы можете сделать то же самое, используя эту команду:
./bmic queue -u admin -p admin -s localhost --name test.performance.queue --purge
Одно из преимуществ инструмента перед командой curl заключается в том, что вам не нужно заботиться о параметрах посредника, поскольку инструмент (попытается) сделает обнаружение за вас.
Существует множество способов управления экземпляром Apache ActiveMQ Artemis. Например, вы можете использовать:
- JMX через инструмент с графическим интерфейсом, такой как JConsole или JVisualVM
- Веб-консоль
- ОТДЫХ через Джолокию
- Сообщения управления (например, через ядро, JMS, AMQP и т. Д.)
Однако вы не можете просто удалить файлы из-под брокера.