サービスメトリクス¶
すべての Knative サービスには、アプリケーションコンテナへの接続をプロキシするプロキシコンテナがあります。キュープロキシのパフォーマンスに関する多くのメトリクスが報告されます。
次のメトリクスを使用すると、リクエストがプロキシ側でキューに入れられているか (バックプレッシャーの必要性)、およびアプリケーション側でリクエストを処理する実際の遅延を測定できます。
キュープロキシのメトリクス¶
リクエストエンドポイント。
| メトリクス名 | 説明 | タイプ | タグ | 単位 | ステータス |
|---|---|---|---|---|---|
revision_request_count |
キュープロキシにルーティングされるリクエストの数 | カウンター | configuration_namecontainer_namenamespace_namepod_nameresponse_coderesponse_code_classrevision_nameservice_name |
次元なし | 安定 |
revision_request_latencies |
応答時間(ミリ秒単位) | ヒストグラム | configuration_namecontainer_namenamespace_namepod_nameresponse_coderesponse_code_classrevision_nameservice_name |
ミリ秒 | 安定 |
revision_app_request_count |
ユーザーコンテナにルーティングされるリクエストの数 | カウンター | configuration_namecontainer_namenamespace_namepod_nameresponse_coderesponse_code_classrevision_nameservice_name |
次元なし | 安定 |
revision_app_request_latencies |
応答時間(ミリ秒単位) | ヒストグラム | configuration_namenamespace_namepod_nameresponse_coderesponse_code_classrevision_nameservice_name |
ミリ秒 | 安定 |
revision_queue_depth |
サービスキューおよび待機キュー内の現在のアイテム数。または、同時実行数が無制限の場合は報告されません。 | ゲージ | configuration_nameevent-displaycontainer_namenamespace_namepod_nameresponse_code_classrevision_nameservice_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 メトリクスクライアントライブラリで定義されているデフォルトのレポート期間です。