Monitoring Schema Registry
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.
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.
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
Use the following environment variable to override default JMX options for Schema Registry:
- Total number of active TCP connections.
connections-accepted-rate (deprecated since 2.0)
- In 1.x: The average rate per second of accepted TCP connections.
- In 2.x: Same as
- The average rate per second of opened TCP connections.
- The average rate per second of closed TCP connections.
- The current role of this Schema Registry instance. A value of 1 indicates this instance is
the primary, 0 indicates it is a secondary.
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.
- Bytes/second of incoming requests
- The average number of requests per second that resulted in HTTP error responses
- The average request latency in ms
- The maximum request latency in ms
- The average number of HTTP requests per second.
- The average request size in bytes
- The maximum request size in bytes
- Bytes/second of outgoing responses
- The average number of HTTP responses per second.
- The average response size in bytes
- The maximum response size in bytes
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
brokers.list with the metric name
request-rate to get