Istio標準メトリクス
以下は、Istioによってエクスポートされる標準のサービスレベルメトリクスです。
テレメトリーコンポーネントは、プロキシ拡張機能として実装されています。COUNTERは、厳密に増加する整数です。DISTRIBUTIONは、値の範囲を頻度にマップします。COUNTERとDISTRIBUTIONは、Envoyドキュメントのメトリクスカウンターとヒストグラムに対応しています。
メトリクス
HTTP、HTTP/2、およびGRPCトラフィックの場合、Istioは次のメトリクスを生成します
リクエスト数 (
istio_requests_total): これは、Istioプロキシによって処理されたリクエストごとにインクリメントされるCOUNTERです。リクエスト時間 (
istio_request_duration_milliseconds): これは、リクエストの時間を測定するDISTRIBUTIONです。リクエストサイズ (
istio_request_bytes): これは、HTTPリクエストボディサイズを測定するDISTRIBUTIONです。レスポンスサイズ (
istio_response_bytes): これは、HTTPレスポンスボディサイズを測定するDISTRIBUTIONです。gRPCリクエストメッセージ数 (
istio_request_messages_total): これは、クライアントから送信されたすべてのgRPCメッセージに対してインクリメントされるCOUNTERです。gRPCレスポンスメッセージ数 (
istio_response_messages_total): これは、サーバーから送信されるすべてのgRPCメッセージに対してインクリメントされるCOUNTERです。
TCPトラフィックの場合、Istioは以下のメトリクスを生成します。
TCP送信バイト数 (
istio_tcp_sent_bytes_total): これは、TCP接続の場合、レスポンス中に送信された合計バイト数を測定するCOUNTERです。TCP受信バイト数 (
istio_tcp_received_bytes_total): これは、TCP接続の場合、リクエスト中に受信された合計バイト数を測定するCOUNTERです。TCP接続オープン数 (
istio_tcp_connections_opened_total): これは、オープンされたすべての接続に対してインクリメントされるCOUNTERです。TCP接続クローズ数 (
istio_tcp_connections_closed_total): これは、クローズされたすべての接続に対してインクリメントされるCOUNTERです。
ラベル
レポーター: これは、リクエストのレポーターを識別します。サーバーのIstioプロキシからのレポートの場合は
destinationに、クライアントのIstioプロキシまたはゲートウェイからのレポートの場合はsourceに設定されます。ソースワークロード: これは、ソースを制御するソースワークロードの名前を識別します。ソース情報がない場合は
unknownになります。ソースワークロード名前空間: これは、ソースワークロードの名前空間を識別します。ソース情報がない場合は
unknownになります。ソースプリンシパル: これは、トラフィックソースのピアプリンシパルを識別します。ピア認証が使用されている場合に設定されます。
ソースアプリ: これは、ソースワークロードの
appラベルに基づいてソースアプリケーションを識別します。ソース情報がない場合はunknownになります。ソースバージョン: これは、ソースワークロードのバージョンを識別します。ソース情報がない場合は
unknownになります。宛先ワークロード: これは、宛先ワークロードの名前を識別します。宛先情報がない場合は
unknownになります。宛先ワークロード名前空間: これは、宛先ワークロードの名前空間を識別します。宛先情報がない場合は
unknownになります。宛先プリンシパル: これは、トラフィック宛先のピアプリンシパルを識別します。ピア認証が使用されている場合に設定されます。
宛先アプリ: これは、宛先ワークロードの
appラベルに基づいて宛先アプリケーションを識別します。宛先情報がない場合はunknownになります。宛先バージョン: これは、宛先ワークロードのバージョンを識別します。宛先情報がない場合は
unknownになります。宛先サービス: これは、受信リクエストを担当する宛先サービスホストを識別します。例:
details.default.svc.cluster.local。宛先サービス名: これは、宛先サービス名を識別します。例:
details。宛先サービス名前空間: これは、宛先サービスの名前空間を識別します。
リクエストプロトコル: これは、リクエストのプロトコルを識別します。リクエストまたは接続プロトコルに設定されます。
レスポンスコード: これは、リクエストのレスポンスコードを識別します。このラベルは、HTTPメトリクスにのみ存在します。
接続セキュリティポリシー: これは、リクエストのサービス認証ポリシーを識別します。Istioが通信を安全にするために使用され、レポートが宛先からの場合は
mutual_tlsに設定されます。セキュリティポリシーを適切に設定できないため、レポートがソースからの場合はunknownに設定されます。レスポンスフラグ: プロキシからのレスポンスまたは接続に関する追加の詳細。Envoyの場合、詳細についてはEnvoyアクセスログの
%RESPONSE_FLAGS%を参照してください。正規サービス: ワークロードは正確に1つの正規サービスに属しますが、複数のサービスに属することができます。正規サービスには名前とリビジョンがあるため、次のラベルになります。
source_canonical_service source_canonical_revision destination_canonical_service destination_canonical_revision宛先クラスター: これは、宛先ワークロードのクラスターを識別します。これは、クラスターのインストール時に
global.multiCluster.clusterNameによって設定されます。ソースクラスター: これは、ソースワークロードのクラスターを識別します。これは、クラスターのインストール時に
global.multiCluster.clusterNameによって設定されます。gRPCレスポンスステータス: これは、gRPCのレスポンスステータスを識別します。このラベルは、gRPCメトリクスにのみ存在します。