CONFLUENT PLATFORM
Schema Registry reports a variety of metrics through Java Management Extensions (JMX). It can also be configured to report stats using additional pluggable stats reporters using the metric.reporters configuration option. The easiest way to view the available metrics is to use jconsole to browse JMX MBeans.
metric.reporters
Schema Registry has two types of metrics. Global metrics help you monitor the overall health of the service. Per-endpoint metrics monitor each API endpoint request method and are prefixed by a name of the endpoint (e.g. subjects.get-schema). These help you understand how the proxy is being used and track down specific performance problems.
subjects.get-schema
Tip
Authentication is disabled for JMX by default in Kafka. You must use environment variables to override these defaults. For each platform component, the options to override the JMX defaults take the form <component-name>_JMX_OPTS. Use the following environment variable to override default JMX options for Schema Registry: SCHEMA_REGISTRY_JMX_OPTS.
<component-name>_JMX_OPTS
SCHEMA_REGISTRY_JMX_OPTS
connections-active
connections-accepted-rate
connections-opened-rate
connections-closed-rate
master-slave-role
The following are the metrics available for each endpoint request method. Metrics for all requests are also aggregated into a global instance for each one. These aggregate instances have no prefix in their name.
<endpoint>.request-byte-rate
<endpoint>.request-error-rate
<endpoint>.request-latency-avg
<endpoint>.request-latency-max
<endpoint>.request-rate
<endpoint>.request-size-avg
<endpoint>.request-size-max
<endpoint>.response-byte-rate
<endpoint>.response-rate
<endpoint>.response-size-avg
<endpoint>.response-size-max
The following is a list of all the API endpoint methods. The naming should map intuitively to each of the API operations. To create a full metric name, prefix a per-endpoint metric name with one of these values. For example, to find the rate of GET /brokers API calls, combine the endpoint name brokers.list with the metric name request-rate to get brokers.list.request-rate.
GET /brokers
brokers.list
request-rate
brokers.list.request-rate
compatibility.subjects.versions.verify
POST /compatibility/subjects/{subject}/versions/{version}
schemas.ids.get-schema
GET /schemas/ids/{id}
POST /subjects/{subject}
subjects.list
GET /subjects
subjects.versions.get-schema
GET /subjects/{subject}/versions/{version}
subjects.versions.get-schema.only
GET /subjects/{subject}/versions/{version}/schema
subjects.versions.list
GET /subjects/{subject}/versions
subjects.versions.register
POST /subjects/{subject}/versions