Schema Registry のモニタリング¶
Looking for Schema Management Confluent Cloud docs? You are currently viewing Confluent Platform documentation. If you are looking for Confluent Cloud docs, check out Schema Management on Confluent Cloud.
Schema Registry からは、Java Management Extensions(JMX)を通じてさまざまなメトリクスが報告されます。さらに、metric.reporters
構成オプションで、プラグ可能な統計情報レポーターを追加して、統計情報が報告されるように構成することもできます。利用できるメトリクスを確認するには、jconsole を使用して JMX MBeans を表示するのが最も簡単です。
Schema Registry には、2 種類のメトリクスが存在します。グローバルメトリクスでは、サービスの全体的な正常性をモニタリングすることができます。一方、エンドポイントごとのメトリクスでは、各 API エンドポイントのリクエストメソッドがモニタリングされます。エンドポイントごとのメトリクスは、プレフィックスとして先頭にエンドポイントの名前が付きます(例: subjects.get-schema
)。これらのメトリクスを利用することで、プロキシがどのように使用されているかを把握し、具体的なパフォーマンスの問題を追跡することができます。
ちなみに
Kafka では、JMX の認証がデフォルトでは無効になっています。環境変数を使用して、これらのデフォルトをオーバーライドする必要があります。各プラットフォームコンポーネントに対しては、 JMX のデフォルトをオーバーライドするオプション は <component-name>_JMX_OPTS
の形式をとります。Schema Registry に対するデフォルトの JMX オプションをオーバーライドするには、SCHEMA_REGISTRY_JMX_OPTS
という環境変数を使用します。
グローバルメトリクス¶
MBean: kafka.schema.registry:type=jetty-metrics¶
connections-active
- アクティブな TCP 接続の総数
connections-accepted-rate
(2.0 以降では非推奨)- 1.x: 受け付けられた TCP 接続の平均レート(1 秒あたりのレート)
- 2.x:
connections-opened-rate
と同じ
connections-opened-rate
- 開かれた TCP 接続の平均レート(1 秒あたりのレート)
connections-closed-rate
- 終了した TCP 接続の平均レート(1 秒あたりのレート)
MBean: kafka.schema.registry:type=master-slave-role¶
master-slave-role
- この Schema Registry インスタンスの現在のロール。1 は、このインスタンスがプライマリであることを示し、0 はセカンダリであることを示します。
エンドポイントごとのメトリクス¶
各エンドポイントのリクエストメソッドで利用できるメトリクスは以下のとおりです。また、すべてのリクエストに対するメトリクスが、それぞれのグローバルインスタンスに集計されます。そうした集計インスタンスの名前に、プレフィックスは付きません。
MBean: kafka.schema.registry:type=jersey-metrics¶
<endpoint>.request-byte-rate
- 1 秒あたりの着信リクエストのバイト数
<endpoint>.request-error-rate
- HTTP エラー応答になったリクエスト数の 1 秒あたりの平均値
<endpoint>.request-latency-avg
- リクエストのレイテンシの平均値(ミリ秒)
<endpoint>.request-latency-max
- リクエストのレイテンシの最大値(ミリ秒)
<endpoint>.request-rate
- 1 秒あたりの HTTP リクエスト数の平均値
<endpoint>.request-size-avg
- リクエストのサイズの平均値(バイト)
<endpoint>.request-size-max
- リクエストのサイズの最大値(バイト)
<endpoint>.response-byte-rate
- 1 秒あたりの発信応答のバイト数
<endpoint>.response-rate
- 1 秒あたりの HTTP 応答数の平均値
<endpoint>.response-size-avg
- 応答サイズの平均値(バイト)
<endpoint>.response-size-max
- 応答サイズの最大値(バイト)
エンドポイント¶
以下の表は、すべての API エンドポイントメソッドの一覧です。名前は、各 API 操作に直観的に対応しているはずです。完全なメトリック名を作成するには、エンドポイントごとのメトリック名に、いずれかのエンドポイント名をプレフィックスとして付けます。たとえば、GET /brokers
API 呼び出しのレートを見つけるには、エンドポイント名 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} |
subjects.get-schema |
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 |