我想将AQ错误队列的大小写入我的WebGUI。从Oracle AQ读取错误队列
我当然可以通过与连接工厂建立连接来计算正常队列的大小。然而,这个连接并不打算得到关于错误队列的提示,不是吗?
如果有机会滥用此已建立的会话(连接到常规队列)来获取错误队列的总大小,我该怎么做?我优先使用EJB。
- 如果没有,我就一定得从DBA的JMS数据库用户,然后从那里读出队列的大小。
- 或者,我可以使用MBeans吗?
我宁可换个角度来使用连接工厂(会话)。
感谢
我想将AQ错误队列的大小写入我的WebGUI。从Oracle AQ读取错误队列
我当然可以通过与连接工厂建立连接来计算正常队列的大小。然而,这个连接并不打算得到关于错误队列的提示,不是吗?
如果有机会滥用此已建立的会话(连接到常规队列)来获取错误队列的总大小,我该怎么做?我优先使用EJB。
我宁可换个角度来使用连接工厂(会话)。
感谢
您可能(如果你能)的异常队列做一个普通select
。对于异常队列,数据库中总是有一个常规表。
有关AQ异常队列的信息,请参阅Oracle AQ documentation。
如果你不具备DB-读访问,并仅限于消费消息,到(Oracle高级)队列,你冷:
这样,您就不会消耗邮件,但能指望它。
我想明确这一点:这是一个解决办法!如果您尚未被授予对高级排队数据库的读取权限!如果队列堆叠或消耗很快,这种方法也不能很好地工作。大小数为及时调用SELECT COUNT(*) FROM MYADVANCEDQUEUE
时相比,不太精确。
我肯定DONT推荐这个,如果你有一个直接的解决方案。