Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagejava
titleBroker Runtime Config
package org.apache.kafka.common;

import org.apache.kafka.common.metrics.Metrics;

/**
 * Interface for plugins to get Metrics instance
 */
public interface Monitorable {
    /**
     * Get the instance of {@link Metrics}.
     */
    default void monitor(Metrics metrics) {
		return;
	};
}


org.apache.kafka.server.authorizer.Authorizer Metrics need be updated to extends Monitorable Interface.
org.apache.kafka.server.authorizer.Authorizer

import org.apache.kafka.common.Monitorable;
public interface Authorizer extends Configurable, Closeable, Monitorable {
...
}


The following metrics would be added:

Metrics group name: "kafka.security.authorizer.metrics"
Metric "acls-total-count" for reporting total acls created.
Metric "authorization-request-rate-per-minute" for reporting total number of authorization requests per minute
Metric "authorization-allowed-rate-per-minute" for reporting total number of authorization allowed per minute
Metric "authorization-denied-rate-per-minute" for reporting total number of authorization denied per minute    

Proposed Changes

org.apache.kafka.server.authorizer.Authorizer Metrics need be updated to extends Monitorable Interface.

...

languagejava
titleorg.apache.kafka.server.authorizer.Authorizer

...

kafka.server.KafkaServer will be updated to pass instance of Metrics to Authorizer.

...