Я пытаюсь получить размер очереди данной очереди, используя интерфейс jolokia ActiveMQ. Имя моей очереди /some/queue
, и из-за косых черт я не могу заставить API работать правильно.
Вот что я пробовал:
curl -XGET --user admin:admin "http://localhost:8161/api/jolokia/read/org.apache.activemq:brokerName=localhost,destinationName=/some/queue,destinationType=Queue,type=Broker/QueueSize" | python -m json.tool
curl -XGET --user admin:admin "http://localhost:8161/api/jolokia/read/org.apache.activemq:brokerName=localhost,destinationName=%2Fsome%2Fqueue,destinationType=Queue,type=Broker/QueueSize" | python -m json.tool
Один с незакодированным /
, а другой с закодированным в %2F
, оба запроса возвращают javax.management.InstanceNotFoundException
. Когда я пытаюсь получить другие очереди, это работает. Когда я делаю destinationName=*
, он перечисляет мою очередь:
"org.apache.activemq:brokerName=localhost,destinationName=/some/queue,destinationType=Queue,type=Broker": {
"QueueSize": 0
},
Как мне кодировать /
в запросах jolokia?