第 5 章 监控代理运行时指标


安装 AMQ Broker 时,安装中包含 Prometheus 指标插件。Prometheus 是一个用于监控大型、可扩展的系统的软件,并在延长期间存储历史运行时数据。您必须修改代理配置以启用插件。启用后,插件会为代理收集运行时指标,并将其导出为 Prometheus 格式。然后,您可以使用 Prometheus 查看指标。您还可以使用图形化工具(如 Grafana )来配置更多数据的高级视觉化。

注意

Prometheus metrics 插件允许您以 Prometheus 格式 收集和导出代理指标。但是,红帽 不提供 安装或配置 Prometheus 本身的支持,也不提供视觉化工具,如 Grafana。如果您需要支持安装、配置或运行 Prometheus 或 Grafana,请访问产品网站以获取社区支持和文档等资源。

除了 Prometheus 插件收集的代理指标外,您可以修改代理配置来捕获与代理的主机 Java 虚拟机(JVM)相关的标准指标集合。特别是,您可以捕获 Garbage Collection (GC)、内存和线程的 JVM 指标。

后续描述的部分:

5.1. 指标概述

要监控代理实例的健康和性能,您可以使用 AMQ Broker 的 Prometheus 插件来监控和存储代理运行时指标。AMQ Broker Prometheus 插件将代理运行时指标导出到 Prometheus 格式,可让您使用 Prometheus 本身来视觉化并在数据上运行查询。

您还可以使用图形化工具(如 Grafana )为 Prometheus 插件收集的指标配置更高级的视觉化和仪表板。

插件导出到 Prometheus 格式的指标如下所述。

代理指标

artemis_address_memory_usage
此代理上所有地址使用的字节数用于内存消息。
artemis_address_memory_usage_percentage
此代理上的所有地址使用的内存作为 global-max-size 参数的百分比。
artemis_connection_count
连接到此代理的客户端数。
artemis_total_connection_count
自启动此代理后连接到此代理的客户端数量。

地址指标

artemis_routed_message_count
路由到一个或多个队列绑定的消息数。
artemis_unrouted_message_count
没有路由到任何队列绑定的消息数。

队列指标

artemis_consumer_count
消耗来自给定队列的消息的客户端数量。
artemis_delivering_durable_message_count
给定队列当前提供给消费者的持久消息数。
artemis_delivering_durable_persistent_size
给定队列当前提供给消费者的持久持久性消息大小。
artemis_delivering_message_count
指定队列当前提供给消费者的消息数。
artemis_delivering_persistent_size
给定队列当前提供给消费者的持久消息大小。
artemis_durable_message_count
当前给定队列中的持久消息数。这包括已调度、分页和发送消息。
artemis_durable_persistent_size
当前给定队列中的持久性消息大小。这包括已调度、分页和发送消息。
artemis_messages_acknowledged
从队列创建以来从给定队列确认的消息数。
artemis_messages_added
创建队列以来添加到给定队列的消息数。
artemis_message_count
当前给定队列中的消息数。这包括已调度、分页和发送消息。
artemis_messages_killed
从队列创建以来从给定队列中删除的消息数。当消息超过配置的最大发送尝试次数时,代理会终止消息。
artemis_messages_expired
创建队列后从给定队列已过期的消息数。
artemis_persistent_size
当前在给定队列中的所有消息( durable 和 non-durable)的持久性大小。这包括已调度、分页和发送消息。
artemis_scheduled_durable_message_count
给定队列中可调度的、可调度的消息数。
artemis_scheduled_durable_persistent_size
给定队列中的持久化、可调度的消息的持久性大小。
artemis_scheduled_message_count
给定队列中调度的消息数量。
artemis_scheduled_persistent_size
给定队列中调度消息的持久性大小。

对于以上未列出的高级别代理指标,您可以通过聚合较低级别的指标来计算这些指标。例如,若要计算总消息数,您可以从代理部署中的所有队列聚合 artemis_message_count 指标。

对于 AMQ Broker 的内部部署,托管代理的 Java 虚拟机(JVM)的指标也会导出到 Prometheus 格式。这不适用于在 OpenShift Container Platform 上部署 AMQ Broker。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.