我正在使用C API处理连接到IBM MQ 8.0的应用程序,并调用MQCONNX
函数。我同时运行此应用程序的多个实例,当我打开MQ Explorer列出队列管理器的应用程序连接时,我看到每个连接的一个条目。但是,这些条目都具有相同的" app name" (可执行文件的名称),因此很难区分哪些实例已连接或未连接。
是否可以将最终显示的值更改为" app name"在MQ Explorer中?我想从我的应用程序传递实例标识符,但查看MQCONNX
的文档似乎没有任何选项适用。
答案 0 :(得分:1)
您可以使用MQOO_SET_ALL_CONTEXT和MQPMO_SET_ALL_CONTEXT选项更改您发送的邮件的应用程序名称。
但我认为您无法更改频道状态中显示的应用程序名称。
但是,您可以在不同的OS用户下运行应用程序的不同实例。用户名也会显示在状态信息中,如果您不覆盖MCA用户ID,则可以将其用于您的目的。 (或者您可以通过使用SSL连接,并使用显示的SSL证书信息来区分您的应用程序实例来执行类似的操作。)
答案 1 :(得分:1)
虽然我同意阿提拉的观点,但是你可以"使用MQOO_SET_ALL_CONTEXT和MQPMO_SET_ALL_CONTEXT选项,我强烈建议你不要这样做。
如果您确实使用这些选项,那么您需要了解其后果。每条消息的以下MQMD字段将留空和/或为空,由应用程序填充它们:
那么,您需要花多少精力在MQ Explorer中查看哪些内容毫无意义呢?
此外,要使用这些选项,UserId(或组)需要" + set"对它正在打开的队列的MQ OAM权限。