Class KafkaClientMetrics
java.lang.Object
io.micrometer.core.instrument.binder.kafka.KafkaClientMetrics
- All Implemented Interfaces:
MeterBinder,AutoCloseable
@Incubating(since="1.4.0")
@NonNullApi
@NonNullFields
public class KafkaClientMetrics
extends Object
Kafka Client metrics binder.
It is based on the Kafka client's metrics() method returning a Metric
map.
Meter names have the following convention: kafka.(metric_group).(metric_name)
Note: the AutoCloseable.close() method should be called when the application shuts down to
shut down the internal metrics-refresh scheduler (when not externally managed) and to
remove the meters this binder registered.
- Since:
- 1.4.0
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionKafkaClientMetrics(org.apache.kafka.clients.admin.AdminClient adminClient) KafkaAdminClientmetrics binderKafkaClientMetrics(org.apache.kafka.clients.admin.AdminClient adminClient, Iterable<Tag> tags) KafkaAdminClientmetrics binderKafkaClientMetrics(org.apache.kafka.clients.admin.AdminClient adminClient, Iterable<Tag> tags, ScheduledExecutorService scheduler) KafkaAdminClientmetrics binder.KafkaClientMetrics(org.apache.kafka.clients.consumer.Consumer<?, ?> kafkaConsumer) KafkaConsumermetrics binderKafkaClientMetrics(org.apache.kafka.clients.consumer.Consumer<?, ?> kafkaConsumer, Iterable<Tag> tags) KafkaConsumermetrics binderKafkaClientMetrics(org.apache.kafka.clients.consumer.Consumer<?, ?> kafkaConsumer, Iterable<Tag> tags, ScheduledExecutorService scheduler) KafkaConsumermetrics binder.KafkaClientMetrics(org.apache.kafka.clients.producer.Producer<?, ?> kafkaProducer) KafkaProducermetrics binderKafkaClientMetrics(org.apache.kafka.clients.producer.Producer<?, ?> kafkaProducer, Iterable<Tag> tags) KafkaProducermetrics binderKafkaClientMetrics(org.apache.kafka.clients.producer.Producer<?, ?> kafkaProducer, Iterable<Tag> tags, ScheduledExecutorService scheduler) KafkaProducermetrics binder. -
Method Summary
-
Constructor Details
-
KafkaClientMetrics
public KafkaClientMetrics(org.apache.kafka.clients.producer.Producer<?, ?> kafkaProducer, Iterable<Tag> tags, ScheduledExecutorService scheduler) KafkaProducermetrics binder. The lifecycle of the custom scheduler passed is the responsibility of the caller. It will not be shut down when this instance isclosed. A scheduler can be shared among multiple instances ofKafkaClientMetricsto reduce resource usage by reducing the number of threads if there will be many instances.- Parameters:
kafkaProducer- producer instance to be instrumentedtags- additional tagsscheduler- custom scheduler to check and bind metrics- Since:
- 1.14.0
-
KafkaClientMetrics
public KafkaClientMetrics(org.apache.kafka.clients.producer.Producer<?, ?> kafkaProducer, Iterable<Tag> tags) KafkaProducermetrics binder- Parameters:
kafkaProducer- producer instance to be instrumentedtags- additional tags
-
KafkaClientMetrics
public KafkaClientMetrics(org.apache.kafka.clients.producer.Producer<?, ?> kafkaProducer) KafkaProducermetrics binder- Parameters:
kafkaProducer- producer instance to be instrumented
-
KafkaClientMetrics
public KafkaClientMetrics(org.apache.kafka.clients.consumer.Consumer<?, ?> kafkaConsumer, Iterable<Tag> tags, ScheduledExecutorService scheduler) KafkaConsumermetrics binder. The lifecycle of the custom scheduler passed is the responsibility of the caller. It will not be shut down when this instance isclosed. A scheduler can be shared among multiple instances ofKafkaClientMetricsto reduce resource usage by reducing the number of threads if there will be many instances.- Parameters:
kafkaConsumer- consumer instance to be instrumentedtags- additional tagsscheduler- custom scheduler to check and bind metrics- Since:
- 1.14.0
-
KafkaClientMetrics
public KafkaClientMetrics(org.apache.kafka.clients.consumer.Consumer<?, ?> kafkaConsumer, Iterable<Tag> tags) KafkaConsumermetrics binder- Parameters:
kafkaConsumer- consumer instance to be instrumentedtags- additional tags
-
KafkaClientMetrics
public KafkaClientMetrics(org.apache.kafka.clients.consumer.Consumer<?, ?> kafkaConsumer) KafkaConsumermetrics binder- Parameters:
kafkaConsumer- consumer instance to be instrumented
-
KafkaClientMetrics
public KafkaClientMetrics(org.apache.kafka.clients.admin.AdminClient adminClient, Iterable<Tag> tags, ScheduledExecutorService scheduler) KafkaAdminClientmetrics binder. The lifecycle of the custom scheduler passed is the responsibility of the caller. It will not be shut down when this instance isclosed. A scheduler can be shared among multiple instances ofKafkaClientMetricsto reduce resource usage by reducing the number of threads if there will be many instances.- Parameters:
adminClient- instance to be instrumentedtags- additional tagsscheduler- custom scheduler to check and bind metrics- Since:
- 1.14.0
-
KafkaClientMetrics
public KafkaClientMetrics(org.apache.kafka.clients.admin.AdminClient adminClient, Iterable<Tag> tags) KafkaAdminClientmetrics binder- Parameters:
adminClient- instance to be instrumentedtags- additional tags
-
KafkaClientMetrics
public KafkaClientMetrics(org.apache.kafka.clients.admin.AdminClient adminClient) KafkaAdminClientmetrics binder- Parameters:
adminClient- instance to be instrumented
-
-
Method Details
-
bindTo
- Specified by:
bindToin interfaceMeterBinder
-
close
public void close()- Specified by:
closein interfaceAutoCloseable
-