2011-11-11 10 views
9

Ho letto nella pagina ActiveMQ, utilizzando JMX possiamo monitorare le code in activemq. Come possiamo ricevere una notifica se una coda ha messaggi (profondità alta) o intervallo di servizio alto in ActiveMQ. Senza utilizzare alcuno script di shell nell'ambiente Unix. È possibile tramite il programma Java? Se sì, dammi alcune idee per farlo.Come impostare il monitoraggio per la coda in attivemq

risposta

10

Per un approccio senza JMX, è anche possibile utilizzare il feed XML offerto dalla pagina della console activemq. Il feed XML viene ospitato presso http://ip:port/admin/xml/queues.jsp

questo avrà tag simili a questo per ogni coda:

<queue name="your queue"> 
<stats size="0" consumerCount="1" enqueueCount="0" dequeueCount="0"/> 
.... 
</queue> 

Basta analizzare questo XML nel codice e vi sono buone per andare.

6

è possibile utilizzare Java tramite JMX le API per il polling periodicamente per le statistiche della coda (vedi this guide)

per l'approccio di notifica, avresti bisogno di usare advisory messages per monitorare i messaggi consegnati su una coda (vedi this guide)

+0

Grazie boday .. . – Vignesh

0

Sì, è possibile in Java.

Nella versione più recente di ActiveMQ, l'agente jolokia viene incorporato. Quindi è possibile ottenere tutte le statistiche che JMX può tirare usando la richiesta HTTP che ti ridurrà le tue statistiche come JSON e quindi puoi controllare i valori correnti e aumentare l'allerta via Email usando SMTP se i valori superano la soglia che hai deciso.

Diciamo che si vuole tirare statistiche Broker utilizzando Jolokia colpiti sotto URL nel browser entrare AMQ nome utente console e la password che è amministratore di default http://servername.com:8161/api/jolokia/read/org.apache.activemq:type=Broker,brokerName=localhost

Oppure se non volete passare attraverso tutti questi problemi, si può usare pronto script Python fatto che ho creato per monitorare AMQ Mucchio, coda params e Broker availability.You può dare un'occhiata, può aiutare a sviluppare lo script o il programma custiom

AMQMonitor and Alerting script