サービスメトリクス¶
すべての Knative サービスには、アプリケーションコンテナへの接続をプロキシするプロキシコンテナがあります。キュープロキシのパフォーマンスに関する多くのメトリクスが報告されます。
次のメトリクスを使用すると、リクエストがプロキシ側でキューに入れられているか (バックプレッシャーの必要性)、およびアプリケーション側でリクエストを処理する実際の遅延を測定できます。
キュープロキシのメトリクス¶
リクエストエンドポイント。
メトリクス名 | 説明 | タイプ | タグ | 単位 | ステータス |
---|---|---|---|---|---|
revision_request_count |
キュープロキシにルーティングされるリクエストの数 | カウンター | configuration_name container_name namespace_name pod_name response_code response_code_class revision_name service_name |
次元なし | 安定 |
revision_request_latencies |
応答時間(ミリ秒単位) | ヒストグラム | configuration_name container_name namespace_name pod_name response_code response_code_class revision_name service_name |
ミリ秒 | 安定 |
revision_app_request_count |
ユーザーコンテナにルーティングされるリクエストの数 | カウンター | configuration_name container_name namespace_name pod_name response_code response_code_class revision_name service_name |
次元なし | 安定 |
revision_app_request_latencies |
応答時間(ミリ秒単位) | ヒストグラム | configuration_name namespace_name pod_name response_code response_code_class revision_name service_name |
ミリ秒 | 安定 |
revision_queue_depth |
サービスキューおよび待機キュー内の現在のアイテム数。または、同時実行数が無制限の場合は報告されません。 | ゲージ | configuration_name event-display container_name namespace_name pod_name response_code_class revision_name service_name |
次元なし | 安定 |
注記
revision_queue_depth
メトリクスは、リビジョンの同時実行ハードリミットが 1 より大きい値に設定されている場合にのみエクスポートされます。
キュープロキシのメトリクスの公開¶
キュープロキシは、ポート 9091 でリクエストエンドポイントのメトリクスをエクスポートします。observability
configmap で metrics.request-metrics-backend-destination
が prometheus
(デフォルト) に設定されている場合、メトリクスは Prometheus によってスクレイピングできます。バックエンドは、プッシュモデルを使用し、metrics.opencensus-address
を介して同じ configmap で設定できる宛先アドレスを必要とする opencensus
に変更できます。ユーザーは、metrics.request-metrics-reporting-period-seconds
を使用して、両方のバックエンドのレポート期間を制御できます。metrics.request-metrics-reporting-period-seconds
がまったく設定されていない場合、レポート期間は、コントロールプレーンとデータプレーンの両方に影響するグローバルレポート期間 metrics.reporting-period-seconds
の値によって異なります。両方のプロパティが利用できない場合、レポート期間は Prometheus バックエンドでは 5 秒、Opencensus バックエンドでは 60 秒になります。
以下は、OpenTelemetry コレクター に接続するための observability configmap のサンプル構成です。
metrics.request-metrics-backend-destination: "opencensus"
metrics.opencensus-address: "otel-collector.metrics:55678"
metrics.request-metrics-reporting-period-seconds: "1"
注記
レポート期間は 1 秒に設定されているため、できるだけ早くメトリクスをプッシュできますが、これは対象のメトリクスバックエンドにとって圧倒的になる可能性があります。ゼロまたは負の値を設定すると、デフォルトで 10 秒になります (遅延がないという意味ではありません)。これは、Knative Serving がメトリクスをエクスポートするために使用する Opencensus メトリクスクライアントライブラリで定義されているデフォルトのレポート期間です。