ActiveMQ命令行工具


命令行工具

命令行工具

n        activemq——運行activemq代理

n activemq-admin——管理代理的實例

在5.0之前activemq-admin被分成多個腳本,例如:

n        shutdown——關閉activemq代理

n        list——列出所有在指定JMX上下文中運行的代理

n        query——查詢JMX上下文中的代理統計和信息。

n        bstat——預定義查詢,顯示有用的代理統計信息。

n        browse——瀏覽指定隊列中的消息。

n        purge——刪除所選目標的消息。

 

activeMQ腳本

這個腳本只對windows平台有效,unix平台上只對5.4.0之前的版本有效,之后的版本使用增強的Unix外殼腳本。

腳本名稱

activemq.bat,activemq

用法

activemq [options] [config] or java –jar run.jar start [options] [config]

描述

通過指定代理配置文件或代理URI配置來運行activemq代理

 

選項

選項名稱

語法

示例

描述

系統定義的選項

-D <key>=<value>

-D activemq.home=c:/ActiveMQ

設置系統屬性例如:System.getProperty(“activemq.home”)將會返回c:/ActiveMQ

幫助選項

-h 、-?、--help

activemq –-help

顯示activemq的幫助信息

版本選項

--version

activemq –version

顯示activemq版本信息

 

示例

示例

描述

activemq

使用缺省的xbean:activemq.xml配置文件來運行一個代理

activemq xbean:myconfig.xml

使用myconfig.xml作為配置文件來運行一個代理

activemq xbean:file:./conf/broker1.xml

使用位於路徑./conf/broker1.xml作為配置文件來運行代理

activemq xbean:file:C:/ActiveMQ/conf/broker2.xml

使用兩個端口連接器來運行代理

activemq broker:(tep://localhost:61616,tcp://localhost:5000)?persistent=false

使用一個端口連接器,一個網絡連接器,關閉持續性來運行一個代理

 

activemq-admin

在ActiveMQ 5.X版本中,上面的獨立工具一並被整合到activemq-admin這個命令中了,如下所示:

n        activemq-admin stop

n        activemq-admin list

n        activemq-admin query

n        activemq-admin bstat

n        activemq-admin browse

每一個命令的作用的描述如下所示,記住activemq命令也可以使用

停止任務

腳本名稱

stop

用法

activemq-admin stop [options] [broker names]

描述

停止正在運行的activemq代理,這個命令需要啟用JMX。

 

選項

選項名稱

語法

示例

描述

停止所有選項

--all

stop –all

停止所有指定JMX上下文中的已注冊代理service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi

JMX URL選項

--jmxurl <url>

--jmxurl service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi

更改連接到JMX服務的url。缺省為:

JMX認證選項

--jmxuser user

--jmxpassword password

--jmxusersmx –jmxpassword smx

基於認證的JMX客戶端需要用戶名和口令

系統定義選項

-D<key>=<value>

-Dactivemq.home=c:/ActiveMQ

設置系統屬性,例如:System.getProperty(“activemq.home”)將會返回c:/ActiveMQ

幫助選項

-h、-?、--help

 

--help

顯式瀏覽的幫助信息

版本信息

--version

activemq –version

顯示activemq的版本信息。

 

示例

示例

描述

activemq-admin stop

在指定JMX上下文中關閉所有的代理

activemq-admin stop --jmxurl service:jmx:rmi:///jndi/rmi://remotehost:1099/jmxrmi –all

停止所有指定JMX上下文中運行的代理

activemq-admin stop localhost

在缺省JMX上下文中停止名字為localhost的代理

activemq-admin stop localhost remotehost

在缺省JMX上下文中停止名字為localhost和remotehost的代理

 

列表任務

腳本名稱

list

用法

activemq-admin list [options]

描述

停止正在運行的activemq代理列表(在指定的JMX上下文中),這個命令需要啟用JMX。

 

選項

選項名稱

語法

示例

描述

JMX URL選項

--jmxurl <url>

--jmxurl service:jmx:rmi:///jndi/rmi://remotehost:1099/jmxrmi

更改JMX連接的服務URL。缺省情況向連接到service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi

JMX認證選項

--jmxuser user

--jmxpassword password

--jmxuser smx –jmxpassword

基於JMX客戶認證的情況下:用戶名和口令是必須的。缺省情況下沒有設置。

系統定義選項

-D <key>=<value>

-Dactivemq.home=c:/ActiveMQ

設置系統屬性,例如:Systems.getProperty(“activemq.home”);將會返回c:/ActiveMQ

help選項

-h、-?、--help

--help

顯示腳本列表的幫助信息

版本選項

--version

activemq –version

顯示activemq版本信息。

 

示例

示例

描述

activemq-admin list

列出所有在缺省JMX上下文中的代理

activemq-admin list --jmxurl service:jmx:rmi:///jndi/rmi://remotehost:1099/jmxrmi

列出在指定JMX上下文中所有運行的代理

 

查詢任務

腳本名稱

query

用法

activemq-admin query [options]

描述

查詢指定JMX上下文中mbean屬性和信息。這個腳本需要啟動JMX。

 

選項

選項名稱

語法

示例

描述

預定的查詢選項

-Q<type>-<name>

--QTopic=test.FOO,-Qbroker=*host

指定查詢選項可以根據他的類型和選擇標示符來查詢指定mbean對象的類型。

 

-xQ<teyp>=<name>

-xQTopic=ActiveMQ.Advisory.*, -xQNetworkConnector=*

刪除所有滿足滿足查詢條件的mbean

對象名查詢

--objname<object name query>

--objname Type=Connect, Brokername=local*

查詢基於JMX對象名格式,這讓你可以得到除去對象名信息的mbeans。

 

-xobjname <object name query>

--objname Type=Topic, Destination=ActiveMQ.Advisory.*

刪除所有已匹配的查詢結果。詳細信息參考下面的表。

查看選項

--view <view list>

--view Type,BrokerName, Destination, EnqueueCount, DequeueCount

讓你指定屬性和對象名來查看,如果view被省略掉,所有的屬性和信息都將被顯示出來。

JMX URL選項

--jmxurl <url>

--jmxurl service:jmx:rmi:///jndi/rmi://remotehost:1099/jmxrmi

更改連接到JMX服務url。缺省情況下連接到service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi

JMX 認證選項

--jmxuser user

--jmxpassword password

--jmxuser smx –jmxpassword smx

基於認證JMX客戶的用戶名和密碼是必須的,缺省上是沒有的。

系統定義選項

-D <key>=<value>

-Dactivemq.home=c:/ActiveMQ

設置系統屬性,例如:System.getProperty(“activemq.home”);將返回c:/ActiveMQ

幫助選項

-h、-?、--help

--help

顯示查詢腳本的幫助信息

Version

--version

activemq –version

顯示activemq版本信息

 

示例

示例

描述

activemq-admin query

顯示所有注冊在缺省JMX上下文內的mbeans的屬性和對象名。

activemq-admin query –QTopic=Test.FOO

顯示目標位Test.FOO的所有屬性和對象名

activemq-admin query –QQueue=*

顯示所有注冊隊列的屬性和對象名

activemq-admin query –QTopic=*.FOO –xQTopic=ActiveMQ.Advisory.*

顯示以.FOO結尾,並除去以ActiveMQ.Advisory.開始的主題中的所有屬性和對象名。

active-admin query –QBroker=local???? –view Type, BrokerName, EnqueueCount, DequeueCount

顯示以local開始的九個字母組成的代理中的對象類型、代理名、入列數和出列數

activemq-admin query –-objname Type=connect,BrokerName=localhost –xQNetworkConnector=*

顯示所有連接到localhost代理的屬性和對象名,並排除其中的網絡連接。

activemq-admin query –-objname Type=connect –xobjname Type=Connection,BrokerName=localhost

除去屬於localhost的代理,顯示其他所有連接器的屬性和對象名。

activemq-admin query –objname Type=Connection –xobjname Type=Connection, BrokerName=remote*

隊列名為四個字符,並且代理不是remote開始的代理的所有的屬性和對象名。

 

activeMQ MBean參考

Mbean類型

屬性/對象名

屬性

代理

n          Type=Broker

n          BrokerName=<broker identifier>

n          BrokerId

n          TotalEnqueueCount

n          TotalDequeueCount

n          TotalConsumerCount

n          TotalMessages

n          TotalMessagesCached

n          MemoryLimit

n          MemoryPercentageUsed

目標

n          Type=Queue|Topic

n          Destination=<destination identifier>

n          BrokerName=<name of broker>

n          EnqueueCount

n          DequeueCount

n          ConsumerCount

n          Messages

n          MessagesCached

網絡連接器

n          Type=NetworkConnector

n          BrokerName=<connector identiier>

 

連接器

n          Type=Connector

n          ConnectorName=<connector identifier>

n          BrokerName=<name of broker>

n          EnqueueCount

n          DequeueCount

連接

n          Type=Connector

n          ConnectorName=<connector identifier>

n          BrokerName=<name of broker>

n          EnqueueCount

n          DequeueCount

n          DispatchQueueSize

n          Active

n          Blocked

n          Connected

n          Slow

 

bstat任務

命令名

bstat

用法

activemq-admin bstat [broker name]

描述

顯示相關代理和組件的一些有用的統計信息

 

示例

示例

描述

activemq-admin bstat

顯示所有注冊在缺省JMX上下文內的統計信息。

activemq-admin bstat localhost

顯示注冊在localhost中的代理的統計信息。

 

瀏覽任務

命令名

browse

用法

activemq-admin browse –amqurl <broker url> [options] <destinations> 或者java –jar run.jar browse –amqurl <broker url> [options] <destinations>

描述

瀏覽選定目標的信息

選項

選項名稱

語法

示例

描述

代理URL選項

--amqurl <url>

--amqurl tcp://localhost:61616

指定連接到代理的URL。

消息選擇器選項

--msgsel “<msgsel1,msgsel2,…>”

--msgsel “JMSMessageID=’*:10’, JMSPriority>5”

運行你過濾要看的消息。把整個選擇條件放置在雙引號內,可以使用通配符,通配符應該放置在單引號內。否則通配符查詢來過濾字符串屬性,其他查詢則按照消息選擇器進行查詢。

組查看選項

-V[header |custom|body]

-Vheader,-Vcustom,-Vbody

可以讓你指定一個特定的消息屬性組進行查看,header視圖顯示所有標准的JMS消息頭,custom顯示所有增加到每一個JMS消息中的自定義字段。body視圖顯示JMS消息的內容。

特定視圖選項

--view <attr1>,[headerKcustom:] <attr2>,…

--view JMSMessageID=’*:10’, custom:MyCustomField

讓你明確的選擇一個特定的消息屬性。它允許你從JMS和自定義header中來選擇指定的屬性。你可以增加標記:“header:”和”custom:”來顯式的指定屬性的歸屬。詳細的內容參考下面的消息頭部表。

系統定義選項

-D<key>=<value>

-Dactivemq.home=c:/ActiveMQ

設置系統屬性,例如:System.getProperty(“activemq.home”)將會返回c:/ActiveMQ

幫助選項

-h、-?、--help

 

--help

顯式瀏覽的幫助信息

版本信息

--version

activemq –version

顯示activemq的版本信息。

 

示例

示例

描述

activemq-admin browse –amqurl tcp://localhost:61616 TEST.FOO

打印所有在隊列‘TEST.FOO’中的JMS消息頭,自定義消息頭和消息內容

active-admin browse –amqurl tcp://localhost:61616 –Vheader,body TEST.FOO

打印在隊列TEST.FOO中所有消息的頭部和消息內容

active-admin browse –amqurl tcp://localhost:61616 –Vheader –view custom:MyCustomField TEST.FOO TEST.BAR

在隊列TEST.FOO和TEST.BAR中打印所有消息的頭部和自定義MyCustomField的內容

activemq-admin browse –amqurl tcp://localhost:61616 –msgsel “JMSMessageID=’*:10’,JMSPriority>5” TEST.FOO

打印隊列TEST.FOO中JMSMessageID匹配*:10且JMSpriority>5的消息的所有屬性。

 

JMS 消息頭參考

頭部名稱

頭部類型

JMSCorrelation ID

String

JMSDelivery Mode

int(1:不持續,2:持續)

JMSDestination

javax.jms.Destination

JMSExpiration

long

JMSMessageID

String

JMSPriority

int

JMSRedelivered

boolean

JMSRelyTo

javax.jms.Destination

JMSTimestamp

long

JMSType

String

 

清除任務

命令名

purge

用法

activemq-admin purge [purge-options] <destinations>

描述

根據消息選擇器來刪除指定目標的消息

 

選項

選項名稱

語法

示例

描述

JMX URL選項

--jmxurl <url>

--jmxurl service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi

更改連接到JMX服務的URL,缺省值為ervice:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi

JMX認證選項

--jmxuser user

--jmxpassword password

--jmxusersmx –jmxpassword smx

基於認證的JMX客戶端需要用戶名和口令

消息選擇器選項

--msgsel “<msgsel1,msgsel2,…>”

--msgsel “JMSMessageID=’*:10’, JMSPriority>5”

運行你過濾要看的消息。把整個選擇條件放置在雙引號內,可以使用通配符,通配符應該放置在單引號內。否則通配符查詢來過濾字符串屬性,其他查詢則按照消息選擇器進行查詢

系統定義選項

-D<key>=<value>

-Dactivemq.home=c:/ActiveMQ

設置系統屬性,例如:System.getProperty(“activemq.home”)將會返回c:/ActiveMQ

幫助選項

-h、-?、--help

 

--help

顯式瀏覽的幫助信息

版本信息

--version

activemq –version

顯示activemq的版本信息。

示例

示例

描述

activemq-admin purge FOO.BAR

刪除所有在FOO.BAR隊列中的消息

activemq-admin purge –msgsel “JMSMessageID=’*:10’, JMSPriority>5” FOO.*

目標匹配FOO.*且JMSMessageID匹配*.10,且JMSPriority大於5的消息,使用通配符,字段必須是字符串,且包含在單引號中。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM