2011-11-16 81 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,然后单击位于顶部的启用按钮。此时应保存您的设置。