查看JMS调用中的所有websphere MQ消息

查看JMS调用中的所有websphere MQ消息,jms,ibm-mq,mq,Jms,Ibm Mq,Mq,我在Java应用程序中使用JMS(Java消息服务API)来处理驻留在websphere MQ上的队列/主题。我正在寻找一个工具/支持pac,它可以显示正在调用的所有MQ消息,例如,当我执行queueConnectionFactory.createConnection()时,它将导致MQCONN/MQCONNX调用,因此我需要查看正在传递的excatly是什么。因此,基本上在我整个基于JMS的交互过程中,我希望看到传递给我的所有MQ消息。有可能吗?跟踪告诉您调用了哪些API。在很大程度上,跟踪有

我在Java应用程序中使用JMS(Java消息服务API)来处理驻留在websphere MQ上的队列/主题。我正在寻找一个工具/支持pac,它可以显示正在调用的所有MQ消息,例如,当我执行queueConnectionFactory.createConnection()时,它将导致MQCONN/MQCONNX调用,因此我需要查看正在传递的excatly是什么。因此,基本上在我整个基于JMS的交互过程中,我希望看到传递给我的所有MQ消息。有可能吗?

跟踪告诉您调用了哪些API。在很大程度上,跟踪有帮助。但是除了调用IBM帮助之外。

如果您使用的是websphere,您可以通过转到WAS控制台和跟踪服务来启用jms日志记录来启用跟踪。

如果您使用的是jms MQ客户端模式连接,则可以在MQ SVRCONN通道上运行发送/接收出口来记录客户端MQI和消息流。免费的IBM SupportPac MA0Z具有此功能。这种技术在绑定模式连接中是不可能的,因为不涉及MQ通道。

我真的不理解这个问题。当你说“MQ消息”时,你是指消息还是MQI调用?什么版本的WMQ?的确,从根本上讲,JMS客户机映射到一组具有适当选项的MQI调用,例如createConnection()不仅仅是MQCONNX,MQINQ也完成了,但您为什么想知道这些呢?您是希望对每个JMS调用都执行此操作,还是只执行一次?有很多方法可以做到这一点,但我认为实际上只适用于WMQ开发/服务Hursley@strmqm:我的意思是询问MQI调用以及传递的参数……因此基本上就像您提到的“基本上JMS客户端映射到一组MQI调用”,所以我想知道这些……我正在生产支持环境中工作,用于将基于JMS的消息传递到websphere MQ v6/v7。有时候,我们花了很多时间调试问题…所以想看看我们是否有任何工具来解决这个问题?它基本上与以下内容相关:例如,如果我在hibernate中工作,我希望生成SQLs。我不知道有任何公共API/supportpac是这样的-我过去在v7中只为com.ibm.jmqi.*打开跟踪,并使用regexp从跟踪文件中分离出相关调用,跟踪非常详细,但很容易阅读,但这只是开发故障排除的临时工具,而不是任何适合生产的工具。AIUI在v7中有一个用于拦截JMQI调用的内部API(eclipse找到com.ibm.mq.JMQI.monitoring),但它似乎没有发布供外部使用。您能提供支持吗?您能告诉我如何启用跟踪吗?java-Djava.library.path=“%MQ\u java\u LIB\u path%”-Dcom.ibm.msg.client.commonservices.trace.status=ON-Dcom.ibm.msg.client.commonservices.trace.outputName=“%MQ\u java\u DATA\u path%”\trace