0

我在执行组的 MB 中有一个已部署的 bar 文件。现在我想找出代理流从中获取输入的输入队列名称。

平台:AIX

4

2 回答 2

1

mqsireportproperties BROKER_NAME -e EXECUTION_GROUP_NAME -d AllMessageFlows -r

其中:BROKER_NAME 是您的代理(< 版本 9)/集成节点(>= 版本 9)的名称,EXECUTION_GROUP_NAME 是您的执行组(< 版本 9)/集成服务器(>= 版本 9)的名称。

这将列出与所有消息流相关联的所有属性,包括部署到 EG 和应用程序(>= 版本 8)中。

要找到您感兴趣的队列名称,我建议将输出重定向到文件并使用 vi 或 sed 等来搜索字符串“queueName”(区分大小写)。

例如: mqsireportproperties BROKER_NAME -e EXECUTION_GROUP_NAME -d AllMessageFlows -r | grep 队列名称

您将得到不止一行包含“queueName”的信息。有些是您不需要担心的内部队列,有些是您已部署的流中的队列。为了知道你想要哪一个,你需要检查输出。

输出首先列出直接在执行组上的消息流,然后是应用程序。在标签“Application”下,您将找到标签“MessageFlow”,然后是 MQ Input 节点的标签,即“ComIbmMQInputNode”。在此之下,您将找到带有您正在寻找的值的“queueName”参数,例如 queueName='INPUT_QUEUE_NAME'。如果您有多个应用程序,则必须找到您要查找的应用程序,每个应用程序下都有一个“标签”参数,即其名称。消息流也是如此。

于 2014-09-17T17:40:10.430 回答
0

我希望您能够从您的 Windows 机器连接到远程代理。您可以通过 MB 资源管理器查看消息流使用的队列。如果您安装了MB 资源管理器,则只需配置您的代理并单击您的流程。它将在 MQ 资源管理器内容中显示“使用的队列”。

或者,如果您没有 MB 资源管理器,您也可以使用CMP API Excerciser工具(位于您的 MB 安装目录中名为 samples 的文件夹下)。

此外,正如 CMP excerciser 所做的那样,您可以使用 MB API 编写一个简单的 java 应用程序,并通过您的消息流对象调用getQueues()函数。

我不确定是否有直接的 unix 命令可用于此目的。

于 2013-09-19T07:42:03.467 回答