You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »


Status

Current state: NA

Vote thread: here

Discussion thread: here

JIRA: KAFKA-19467 

Please keep the discussion on the mailing list rather than commenting on the wiki (wiki discussions get unwieldy fast).

Motivation

The controller thread is responsible for critical cluster coordination tasks, including leadership elections, topic metadata updates, partition assignments, and Raft-based state changes. However, there is currently no metric to measure how much time the controller spends actively processing work versus waiting for new events or Raft callbacks. This KIP proposes introducing a new metric to monitor the controller thread’s idleness ratio.

Public Interfaces

Monitoring

NameTypeDescription
kafka.controller:type=KafkaController,name=ControllerThreadIdleRatioGaugeThe ratio of time the controller thread is idle to the time controller  compared to the total time. Values range from 0 to 1, where 0 indicates the thread is fully busy and 1 indicates it is completely idle.

Compatibility, Deprecation, and Migration Plan

We adds one new metric so there will be no behaviour changes and no impact on existing kafka versions.

Test Plan

We will add unit test to verify the metric. 

Rejected Alternatives

If there are alternative ways of accomplishing the same thing, what were they? The purpose of this section is to motivate why the design is the way it is and not some other way.

  • No labels