Gibt es eine Möglichkeit zu löschen /purge alle Warteschlangen in ActiveMQ über die Kommandozeile (win/linux)?
Ich konnte nur die Befehle für eine bestimmte queue.
Oder vielleicht gibt es eine Möglichkeit, dies zu tun über die activeMQ-admin? Wieder habe ich nur gefunden, wie man löschen/leeren der Warteschlangen eins nach dem anderen, die sehr mühsam sein kann.
Dank!
InformationsquelleAutor Ayelet | 2014-12-03
Können Sie tun, verändern Sie Ihre
activemq.xml
ein bisschen:Dieser arbeitet mit KahaDB message-stores (es hat Probleme mit JDBC message Store), werden alle Nachrichten gelöscht und anschließend Warteschlangen gelöscht werden.
Wie Sie möchten, dass alle Warteschlangen gelöscht werden, ein Neustart der broker nicht eine kostspielige option, alles zu reinigen.
Es hat mein Leben gerettet, danke!
willkommen ,froh zu helfen!
InformationsquelleAutor Vihar
Entwickelte ich meine eigene ActiveMQ-Befehlszeilen-Dienstprogramm (activemq-cli), um dies zu tun. Sie können es hier finden: https://github.com/antonwierenga/activemq-cli (Befehl 'purge-alle-Warteschlangen "oder" remove-all-queues').
InformationsquelleAutor Anton
Ab version 5.0 es sieht aus wie diese kann mithilfe der CLI mit ActiveMQ selbst:
dequeueCount
wird nicht aktualisiert, 0. Neustart nach der Säuberung funktioniert.InformationsquelleAutor starkos
Andere Möglichkeit ist das bereitstellen einer kleinen Kamel-route, die in einem container (z.B. Apache ServiceMix) oder einfach durch ausführen eines java-Programms enthalten die route.
Zum Beispiel hier ist die route, die ich derzeit auf meinem Entwicklungs-Rechner, wo ich auch den ServiceMix installiert:
InformationsquelleAutor рüффп
1 - gehen Sie zu amq bin-Ordner, in meinem Fall:
2 - run-amq-client:
3 - run purge auf die gewünschte Warteschlange
InformationsquelleAutor Shell_Leko