Versions Compared

Key

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

...

Kafka Streams metric nameTelemetry metric name
"process-records-avg, group=stream-thread-metrics""org.apache.kafka.stream.thread.process.records.avg"
"commit-latency-max, group=stream-thread-metrics""org.apache.kafka.stream.thread.commit.latency.max"


Configuration

With KIP-714, clients use the ENABLE_METRICS_PUSH_CONFIG configuration to enable pushing metrics.  Kafka Streams also has the ENABLE_METRICS_PUSH_CONFIG  configuration, which is meant to extend to the internal client's ability to push metrics.

But Kafka Streams is in a unique position, as it is a client application itself.  As a consequence, there is some potential tension with different metrics enablement patterns between Kafka Streams and its internal clients. Below is a table of configuration possibilities:


Metrics enabledKafka Streams config actionClient config action
Kafka Streams = yes, clients = yesNothing, enabled by defaultNothing, enabled by default
Kafka Streams = no, clients = yes

ENABLE_METRICS_PUSH_CONFIG = false 

main.consumer.ENABLE_METRICS_PUSH_CONFIG = true 

producer.ENABLE_METRICS_PUSH_CONFIG = true 


It's important to note that since Kafka Streams leverages the client metrics mechanism, disabling metrics for internal clients removes the possibility of pushing Kafka Streams metrics.  In practice, this is not an anticipated scenario, but in the interest of completeness, it's worth specifying it here in the KIP.

Compatibility, Deprecation, and Migration Plan

...