GH-2485: Improvements in Kafka Binder Metrics
Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2485 These improvements are threading related Initial implementation Readd missing 'cache' for recent offset lags and general refactoring Add a test case for the schedule-only variant and externalize scheduling interval Consistency of configuration property naming and minor cleanup of existing code Review feedback: documentation, author addition and copyright adjustments Doc wording changes Fix checkstyle issues Adjust reference doc and improve new property names according to review Move documentation to the correct file
This commit is contained in:
@@ -51,6 +51,7 @@ This section contains the configuration options used by the Apache Kafka binder.
|
||||
|
||||
For common configuration options and properties pertaining to the binder, see the https://cloud.spring.io/spring-cloud-static/spring-cloud-stream/current/reference/html/spring-cloud-stream.html#binding-properties[binding properties] in core documentation.
|
||||
|
||||
[[kafka-binder-properties]]
|
||||
==== Kafka Binder Properties
|
||||
|
||||
spring.cloud.stream.kafka.binder.brokers::
|
||||
@@ -160,6 +161,19 @@ This is also true, if this value is present, but the directory cannot be found o
|
||||
+
|
||||
Default: none.
|
||||
|
||||
spring.cloud.stream.kafka.binder.metrics.defaultOffsetLagMetricsEnabled::
|
||||
When set to true, the offset lag metric of each consumer topic is computed whenever the metric is accessed.
|
||||
When set to false only the periodically calculated offset lag is used.
|
||||
+
|
||||
Default: true
|
||||
|
||||
spring.cloud.stream.kafka.binder.metrics.offsetLagMetricsInterval::
|
||||
The interval in which the offset lag for each consumer topic is computed.
|
||||
This value is used whenever `metrics.defaultOffsetLagMetricsEnabled` is disabled or its
|
||||
computation is taking too long.
|
||||
+
|
||||
Default: 60 seconds
|
||||
|
||||
[[kafka-consumer-properties]]
|
||||
==== Kafka Consumer Properties
|
||||
|
||||
@@ -742,6 +756,9 @@ The binder creates the `KafkaBinderMetrics` bean if Micrometer is on the classpa
|
||||
The metric contains the consumer group information, topic and the actual lag in committed offset from the latest offset on the topic.
|
||||
This metric is particularly useful for providing auto-scaling feedback to a PaaS platform.
|
||||
|
||||
The metric collection behaviour can be configured by setting properties in the `spring.cloud.stream.kafka.binder.metrics` namespace,
|
||||
refer to the <<kafka-binder-properties, kafka binder properties section>> for more information.
|
||||
|
||||
You can exclude `KafkaBinderMetrics` from creating the necessary infrastructure like consumers and then reporting the metrics by providing the following component in the application.
|
||||
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user