当前位置: 首页 > 知识库问答 >
问题:

如何以编程方式读取jms队列统计信息

向杜吟
2023-03-14

我找到以下链接来读取JMS队列中的消息及其工作。

https://blogs.oracle.com/soaproactive/entry/jms_step_3_using_the

现在,我想以编程方式读取JMS队列统计信息,如消息数、挂起消息数和消息输入/输出时间等。weblogic或weblogic中是否有可能为此提供任何API?

请帮忙。

共有3个答案

柴宏阔
2023-03-14

JMS API不提供此类信息。它用于接收和发送消息,但不是从底层中间件中获取统计信息。

检查您使用的底层MQ的直接API。例如,IBMWebSphere MQ有这样的API。

梁丘缪文
2023-03-14

JMS规范中没有用于统计的API。但是,您可以使用JMX来监控统计信息。

从文档中,

监控JMS服务器

您可以通过管理控制台或JMSServerRuntimeMBean监视域中定义的活动JMS服务器上的统计信息。JMS服务器充当JMS模块中专门针对JMS服务器的JMS队列和主题资源的管理容器

这篇文章(新方法)可能会有所帮助。

尹赞
2023-03-14

统计信息是消息代理实现的一部分,因此是特定于供应商的。一种流行的实现是ActiveMQ。它可以在WebLogic Server或WebLogic Express中运行。

注意:显然还有许多其他JMS实现,您应该自己仔细评估哪个实现适合您的需求。尽管如此,我将以它为例指出您案例的相关特性:

从5.3版开始,ActiveMQ附带了一个统计插件

可用于从代理或其目标检索统计信息。

您应该能够通过向代理中的特定目的地发送消息,从代码中主动轮询统计信息,有关详细信息,请参阅链接文档。

ActiveMQ的另一个功能是咨询消息。在代理的配置中启用它,它

允许您使用常规JMS消息监视系统。

通过这种方式,您可以被动地对消息传递系统中的某些事件做出反应,例如,当队列超过某个阈值时。

 类似资料:
  • 我有Weblogic 12.1.2和IBM WebSphere MQ Explorer 7.5.0.2。 在Weblogic中,我创建了: JMS服务器 我有一个JAVA程序,可以向这个队列发送消息。 我想使用MQ Explorer来读取来自此队列的消息。我如何设置它?我应该在MQ Explorer中做什么和如何设置,以连接到此队列?有人能给我一个Web链接吗?我找不到任何有用的东西,但也许我想错

  • 问题内容: 如何在不启动GUI的情况下如何编写python脚本来读取Tensorboard日志文件,提取损失和准确性以及其他数字数据? 问题答案: 您可以使用TensorBoard的Python类或脚本来提取数据: 如何从TensorBoard导出数据? 如果您想导出数据以在其他地方可视化(例如iPython Notebook),那也是可能的。您可以直接依赖TensorBoard用来加载数据的基础

  • 报告不能全部以编程方式进行,因为它们的布局会不断发生变化,我们不能每次发生这种变化时都更新我们的软件。

  • 我在Weblogic 12c上部署了一个MDB,它从JMS队列(UDQ)读取消息。MDB正在读取消息,但它没有从JMS队列中删除,这导致消息被重复读取。所以,我想知道MDB何时确认JMS队列它成功读取了消息,并且队列应该删除该消息。

  • 我目前正在使用NServicebus和Azure构建一个应用程序。 常规流程正在运行,但现在我想对应用程序的管理和监视方面做更多的工作。 客户希望看到一个仪表板,在那里他可以看到应用程序的运行状况,也可以纠正问题。 我想做的是: 检测何时将内容发送到错误队列(以便能够向管理员发送警报) 允许管理员处理来自管理应用程序的错误队列消息,而无需求助于提供的命令行工具 在NServicebus中是否有一种

  • 我有以下设置: 外部应用程序写入到jms队列 jms队列也是外部的,所以这里不可能进行配置 运行在Glassfish上的现有应用程序,使用ActiveMQ将服务器连接到jms队列 现有的应用程序是一个MessageDriven bean,实现了MessageListener接口(当消息放在队列中时,当前正在处理消息) 新的要求是消息只能在02:00到04:00的时间段内处理 如何最好地限制Mess