我正在尝试使用python读取一些MQ变量,例如:
print('High Queue depth:', qq.inquire(pymqi.CMQC.MQIA_HIGH_Q_DEPTH))当我运行它时,我得到了这个错误:
File "depth.py", line 32, in <module>
print('High Queue depth:', qq.inquire(pymqi.CMQC.MQIA_HIGH_Q_DEPTH))
File "/home/vagrant/miniconda2/lib/python2.7/site-packages/pymqi.py", line 1766, in inquire
raise MQMIError(rv[-2], rv[-1])
pymqi.MQMIError: MQI Error. Comp: 2, Reason 2067: FAILED: MQRC_SELECTOR_ERROR发布于 2015-12-05 09:40:44
MQ原因代码MQRC_SELECTOR_ERROR (2067)意味着您不能查询该对象属性(MQIA_HIGH_Q_DEPTH)。
MQIA_HIGH_Q_DEPTH不是队列属性,它是在事件消息中使用的常量值。我怀疑您正在尝试查询您当前的队列深度?如果是这样,那么您应该使用的属性是MQIA_CURRENT_Q_DEPTH。您可以在Table 1. MQINQ attribute selectors for queues中看到队列支持MQINQ的属性的完整列表,因此如果这不是您想要的属性(我猜),那么您可以从该列表中选择一个合适的属性。
https://stackoverflow.com/questions/34073954
复制相似问题