Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Status

Current State: Under Discussion

...

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

Motivation

There is currently no metric that captures the total number of topics in a Kafka cluster. It would be useful to maintain a total topic count metric on the Kafka Controller.

Public Interface

There are no programming public interface changes. We are only adding a new metric.

Proposed Changes

The metric name would be:

kafka.controller:type=KafkaController,name=TotalTopicCountTopicCount

type: gauge

value: count of total all topics within the cluster

TotalTopicCountTopicCount is updated when the ControllerEventThread gets a TopicChange and TopicDeletion request and is purged when on Controller failover.

Compatibility, Depreciation and Migration Plan

The changes are completely backward compatible.

Reject Alternatives

TotalTopicCountTopicCount metric is collected from the MetadataCache for each Broker. It was rejected because it is not the source of truth (as opposed to the controller metric). The metric is good to have and also helps identify delays in propagation of metadata updates to the brokers.

kafka.server:type=MetadataCache,name=TotalTopicCountTopicCount
type: gauge
value: count of totalall topics within a cluster