Hey Colin,

Note that the clients expose "Map<MetricName, ? extends Metric> metrics()".
So, some things are already exposed. I generally agree that we should be
very clear about the new classes we are exposing as public APIs via this.

Ismael

On Mon, May 18, 2020 at 11:29 AM Colin McCabe <cmcc...@apache.org> wrote:

> KafkaMetrics isn't a public API currently.  Are we willing to make it
> one?  I think this is a very big change, if so.
>
> This affects a huge number of classes.  MetricConfig, MetricReporter,
> MetricName, Sensor, KafkaMetric, and probably more I'm forgetting would
> need to become public APIs that we support indefinitely.  So at the very
> least, the KIP needs to propose adding an interface annotation to those
> classes of Stable or Evolving.
>
> Also-- a minor point compared to the previous one-- but there is no need
> for single-function "add-on-API" interfaces like Monitorable any more.
> This was something we used to do back before Java 8 was supported.  In the
> Java 7 days we couldn't really add a function to an existing interface so
> we had stuff like this and a lot of instanceof checks.  That's not needed
> any more.  You can just add the function to the Authorizer interface
> directly.  Or better yet, just add this field to AuthorizerServerInfo.  The
> purpose of AuthorizerServerInfo was to make new fields like this easy to
> add.
>
> best,
> Colin
>
>
> On Fri, May 15, 2020, at 14:21, Zhiguo Huang wrote:
> > Thanks to everyone for their input. I've incorporated the changes, and I
> > think this is ready for voting.
> >
> > To summarize, the KIP simply proposes to add a feature which expose
> > instance of Kafka Metrics in Kafka Authorizer plugin.The KIP can be
> > found
> > here:
> >
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-608+-+Expose+Kafka+Metrics+in+Authorizer
> >
> > Thanks a lot!
> >
> > Jeff.
> >
>

Reply via email to