DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
| Table of Contents |
|---|
Status
Current state: Under discussionAccepted
Vote thread: https://lists.apache.org/thread/vvw45tcdmb23d8gpgb3x4fklx3tp7hpm
Discussion thread: https://lists.apache.org/thread/w4ml9ffkj1j31j8kjpbywq9jsw5ck5sr
...
| Name | Type | Description |
|---|---|---|
| kafka.server:type=MetadataLoader,name=FinalizedLevel,featureName=X | IntegerShort | The finalized value of the feature level for a feature named "X". |
| kafka.controller:type=KafkaController,name=MinimumSupportedLevel,featureName=X | Integer | The minimum supported feature level for a feature named "X" on the controller. |
| kafka.controller:type=KafkaController,name=MaximumSupportedLevel,featureName=X | Integer | The maximum supported feature level for a feature named "X" on the controller. |
| kafka.server:type=brokernode-metadata-metrics,name=minimum-supported-level,feature-level,featureNamename=X | IntegerShort | The minimum supported feature level for a feature named "X" on the brokernode. |
kafka.server:type=broker-metadatanode-metrics,name=maximum-supported-level,feature-level,featureNamename=X | IntegerShort | The maximum supported feature level for a feature named "X" on the brokernode. |
The FinalizedLevel metric will report the finalized feature level for each production feature if it exists. If the feature level is not set, the metric will return a value of 0, since that means the feature is not enableda feature does not have a finalized level, it will not have an associated FinalizedLevel metric. Similarly, if the finalized level of the metric is "removed" by setting it to 0, the associated FinalizedLevel metric will also be removed. This does not apply to metadata.version , whose minimum version is 7. This metric should still reside in the MetadataLoader metric group because its value is derived from the metadata log's feature records.
minimum-supported-level and maximum-supported-level are metrics whose values are dependent only on the software version being run, so it seems appropriate to define a new metric type to house these sorts of metrics going forward (release version, commit hash, etc.).
Compatibility, Deprecation, and Migration Plan
...
We will add junit tests to verify the new metrics.
...
Alternatives
Running kafka-feature describe on every node is one way to track feature level upgrades/downgrades, but it is not straightforward to monitor since it is not a metric.
This KIP discusses the above approach: KIP-1160: Enable returning supported features from a specific broker