16.5. 重要的 Kafka 代理指标


Kafka 提供了多个 MBeans 来监控 Kafka 集群中代理的性能。它们应用到单独的代理而不是整个集群。

下表介绍了这些代理级 MBeans 的选择,它们被组织到服务器、网络、日志记录和控制器指标中。

16.5.1. Kafka 服务器指标

下表显示了报告 Kafka 服务器信息的指标选择。

Expand
表 16.2. Kafka 服务器的指标
指标mbean描述预期值

每秒的消息

kafka.server:type=BrokerTopicMetrics,name=MessagesInPerSec

代理使用单个消息的速率。

与集群中的其他代理相同。

每秒字节数

kafka.server:type=BrokerTopicMetrics,name=BytesInPerSec

从制作者发送的数据被代理消耗的速率。

与集群中的其他代理相同。

每秒复制字节数

kafka.server:type=BrokerTopicMetrics,name=ReplicationBytesInPerSec

来自其他代理发送数据的速率由 follower 代理使用。

N/A

每秒的字节数

kafka.server:type=BrokerTopicMetrics,name=BytesOutPerSec

消费者从代理获取和读取数据的速率。

N/A

每秒复制字节数

kafka.server:type=BrokerTopicMetrics,name=ReplicationBytesOutPerSec

从代理发送到其他代理的速率。此指标可用于监控代理是否为一组分区的领导机。

N/A

下复制分区

kafka.server:type=ReplicaManager,name=UnderReplicatedPartitions

在后续副本中没有完全复制的分区数量。

最小 ISR 分区数

kafka.server:type=ReplicaManager,name=UnderMinIsrPartitionCount

最小 In-Sync Replica (ISR)数下的分区数量。ISR 计数表示与领导状态保持最新的一组副本。

分区数

kafka.server:type=ReplicaManager,name=PartitionCount

代理中的分区数量。

几乎即使与其他代理相比也是如此。

领导数

kafka.server:type=ReplicaManager,name=LeaderCount

此代理是领导的副本数。

与集群中的其他代理相同。

ISR 每秒缩小

kafka.server:type=ReplicaManager,name=IsrShrinksPerSec

代理中 ISR 数量降低的速率

ISR 每秒扩展

kafka.server:type=ReplicaManager,name=IsrExpandsPerSec

代理中 ISR 数量增加的速率。

最大滞后

kafka.server:type=ReplicaFetcherManager,name=MaxLag,clientId=Replica

在领导副本接收消息由领导副本和后续副本接收的时间之间的最大滞后。

与生成请求的最大批处理大小成比例。

生成者中的请求

kafka.server:type=DelayedOperationPurgatory,name=PurgatorySize,delayedOperation=Produce

在制作者购买中发送请求的数量。

N/A

获取购买的请求

kafka.server:type=DelayedOperationPurgatory,name=PurgatorySize,delayedOperation=Fetch

获取请求中的获取请求数。

N/A

请求处理器平均闲置百分比

kafka.server:type=KafkaRequestHandlerPool,name=RequestHandlerAvgIdlePercent

表示请求处理程序(IO)线程没有使用的时间百分比。

较低值表示代理的工作负载很高。

请求(请求免于节流)

kafka.server:type=Request

免于节流的请求数。

N/A

ZooKeeper 请求延迟(以毫秒为单位)

kafka.server:type=ZooKeeperClientMetrics,name=ZooKeeperRequestLatencyMs

来自代理的 ZooKeeper 请求延迟,以毫秒为单位。

N/A

ZooKeeper 会话状态

kafka.server:type=SessionExpireListener,name=SessionState

代理连接到 ZooKeeper 的状态。

已连接

16.5.2. Kafka 网络指标

下表显示了报告有关请求信息的指标选择。

Expand
指标mbean描述预期值

每秒请求数

kafka.network:type=RequestMetrics,name=RequestsPerSec,request={Produce|FetchConsumer|FetchFollower}

为每秒请求类型发出的请求总数。ProduceFetchConsumerFetchFollower 请求类型各自都有自己的 MBeans。

N/A

请求字节数(请求大小(以字节为单位)

kafka.network:type=RequestMetrics,name=RequestBytes,request=([-.\w]+)

为 MBean 名称的 request 属性标识的请求类型发出的请求大小,以字节为单位。RequestBytes 节点下列出了所有可用请求类型的单独的 MBeans。

N/A

临时内存大小(以字节为单位)

kafka.network:type=RequestMetrics,name=TemporaryMemoryBytes,request={Produce|Fetch}

用于转换消息格式和解压缩消息的临时内存量。

N/A

消息转换时间

kafka.network:type=RequestMetrics,name=MessageConversionsTimeMs,request={Produce|Fetch}

花费在转换消息格式的时间(毫秒)。

N/A

请求总时间(以毫秒为单位)

kafka.network:type=RequestMetrics,name=TotalTimeMs,request={Produce|FetchConsumer|FetchFollower}

处理请求的总时间(以毫秒为单位)。

N/A

请求队列时间(以毫秒为单位)

kafka.network:type=RequestMetrics,name=RequestQueueTimeMs,request={Produce|FetchConsumer|FetchFollower}

请求当前在 request 属性中给定的请求类型的时间(以毫秒为单位)。

N/A

本地时间(领导本地处理时间)以毫秒为单位

kafka.network:type=RequestMetrics,name=LocalTimeMs,request={Produce|FetchConsumer|FetchFollower}

处理请求的领导时间(以毫秒为单位)。

N/A

远程时间(领导远程处理时间)以毫秒为单位

kafka.network:type=RequestMetrics,name=RemoteTimeMs,request={Produce|FetchConsumer|FetchFollower}

请求等待后续程序的时间长度(以毫秒为单位)。RemoteTimeMs 节点下列出了所有可用请求类型的单独的 MBeans。

N/A

以毫秒为单位响应队列时间

kafka.network:type=RequestMetrics,name=ResponseQueueTimeMs,request={Produce|FetchConsumer|FetchFollower}

请求在响应队列中等待的时间长度(以毫秒为单位)。

N/A

响应发送时间(以毫秒为单位)

kafka.network:type=RequestMetrics,name=ResponseSendTimeMs,request={Produce|FetchConsumer|FetchFollower}

发送响应所需的时间(以毫秒为单位)。

N/A

网络处理器平均空闲百分比

kafka.network:type=SocketServer,name=NetworkProcessorAvgIdlePercent

网络处理器闲置的平均时间百分比。

在零到一之间.

16.5.3. Kafka 日志指标

下表显示了报告日志记录信息的指标选择。

Expand
指标mbean描述预期值

以毫秒为单位的日志清除率和时间

kafka.log:type=LogFlushStats,name=LogFlushRateAndTimeMs

写入磁盘的速率(以毫秒为单位)。

N/A

离线日志目录计数

kafka.log:type=LogManager,name=OfflineLogDirectoryCount

离线日志目录数量(例如,硬件故障后)。

16.5.4. Kafka 控制器指标

下表显示了一个报告集群控制器信息的指标选择。

Expand
指标mbean描述预期值

活跃控制器计数

kafka.controller:type=KafkaController,name=ActiveControllerCount

指定为控制器的代理数量。

一个表示代理是集群的控制器。

以毫秒为单位领导选举率和时间

kafka.controller:type=ControllerStats,name=LeaderElectionRateAndTimeMs

选择新领导副本的速度。

16.5.5. Yammer 指标

代表速率或时间单位的指标作为 Yammer 指标提供。使用 Yammer 指标的 MBean 类名称前缀为 com.yammer.metrics

Yammer 速率指标具有以下属性来监控请求:

  • 数量
  • EventType (Bytes)
  • FifteenMinuteRate
  • RateUnit (Seconds)
  • MeanRate
  • OneMinuteRate
  • FiveMinuteRate

Yammer 时间指标具有以下属性来监控请求:

  • Max
  • Min
  • 平均
  • StdDev
  • 75/95/98/99/99.9 Percentile
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat