Jeff Klukas created KAFKA-3701:
----------------------------------
Summary: Expose KafkaStreams metrics in public API
Key: KAFKA-3701
URL: https://issues.apache.org/jira/browse/KAFKA-3701
Project: Kafka
Issue Type: Improvement
Components: streams
Reporter: Jeff Klukas
Assignee: Guozhang Wang
Priority: Minor
Fix For: 0.10.1.0
The Kafka clients expose their metrics registries through a `metrics` method
presenting an unmodifiable collection, but `KafkaStreams` does not expose its
registry. Currently, applications can access a StreamsMetrics instance via the
ProcessorContext within a Processor, but this limits flexibility.
Having read-only access to a KafkaStreams.metrics() method would allow a
developer to define a health check for their application based on the metrics
that KafkaStreams is collecting. Or a developer might want to define a metric
in some other framework based on KafkaStreams' metrics.
I am imagining that an application would build and register KafkaStreams-based
health checks after building a KafkaStreams instance but before calling the
start() method. Are metrics added to the registry at the time a KafkaStreams
instance is constructed, or only after calling the start() method? If metrics
are registered only after application startup, then this approach may not be
sufficient.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)