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 Use JDK 8 compatible APIs and make the new test case public to satisfy junit
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
|
||||
|
||||
@@ -744,6 +758,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