2011-11-16 77 views

回答

1

所以要找出隊列深度我寫這個劇本JACK ...

set qpoint "WebSphere:*,type=SIBQueuePoint" 
set queues [$AdminControl queryNames $qpoint] 
foreach q $queues { 
set identifier [$AdminControl getAttribute $q identifier] 
set size [$AdminControl getAttribute $q depth] 
puts "$identifier size: $size messages" 
puts [$AdminControl getAttributes $q] 

東西它在包裝盒上,jeff.jacl文件並調用命令。 ...

/opt/IBM/WebSphere/AppServer/bin # ./wsadmin.sh -profile jp.cmd.jacl 

你會得到什麼?好吧,你會得到一整套迷人的!

WASX7209I: Connected to process "server1" on node WRSNode using SOAP connector; The type of process is: UnManagedProcess 
CHANGE_REQUEST size: 15 messages 
{depth 15} {state ACTIVE} {id CFAC834BE6AF5D9A30451D01_QUEUE_51} {identifier CHANGE_REQUEST} {highMessageThreshold 50000} {sendAllowed true} 
ETL_DEAD size: 378 messages 

下一個工作是看我是否可以直接使用JACL的所有java代碼。

2

對於任何有興趣的人,這裏是傑夫的答案jython版本。

qpoint = 'WebSphere:*,type=SIBQueuePoint' 
queues = AdminControl.queryNames(qpoint).split() 

for q in queues: 
    identifier = AdminControl.getAttribute(q, 'identifier') 
    size = AdminControl.getAttribute(q, 'depth') 
    print identifier + ' size: ' + size + ' messages' 
    print AdminControl.getAttributes(q) 
+0

很酷,我會把它添加到我的工具箱中! –

0

爲了獲取使用WebSphere的PMI SIB隊列的深度,則需要選擇以下兩個計數器:

AvailableMessageCount和UnavailableMessageCount

這裏是如何:在WebSphere應用程序服務器管理控制檯,轉至託管消息傳遞引擎的應用程序服務器的性能監視基礎結構(PMI)面板:

應用程序服務器> your_app_server_name> Performa監控基礎架構(PMI)

默認情況下,您將位於配置選項卡上。如果希望在不重新啓動應用程序服務器的情況下啓動此監視,則可以選擇切換到運行時選項卡。

進入PMI面板後,點擊最後一個單選按鈕的標籤「自定義」鏈接。這應該將您帶到自定義監視級別面板。從左側導航樹中選擇: - SIB服務 - SIB消息傳遞引擎 - * - 目標 - 隊列選擇兩個計數器:AvailableMessageCount和UnavailableMessageCount,然後單擊位於頂部的啓用按鈕。此時應保存您的設置。