Envoy 統計資訊
Envoy Proxy 會保存關於網路流量的詳細統計資訊。
Envoy 的統計資訊僅涵蓋特定 Envoy 實例的流量。有關每個服務 Istio 遙測的持久資訊,請參閱可觀測性。Envoy Proxy 記錄的統計資訊可以提供關於特定 Pod 實例的更多資訊。
若要查看 Pod 的統計資訊
$ kubectl exec "$POD" -c istio-proxy -- pilot-agent request GET stats
Envoy 會產生關於其行為的統計資訊,並根據 Proxy 功能來設定統計資訊的範圍。範例包括
依預設,Istio 會將 Envoy 組態為記錄最少的統計資訊,以減少已安裝 Proxy 的整體 CPU 和記憶體用量。預設的收集索引鍵是
cluster_manager
listener_manager
server
cluster.xds-grpc
若要查看統計資料收集的 Envoy 設定,請使用istioctl proxy-config bootstrap
並遵循深入了解 Envoy 組態。Envoy 僅收集 stats_matcher
JSON 元素中與 inclusion_list
相符的項目的統計資料。
若要配置 Istio 代理程式以記錄額外的統計數據,您可以將 ProxyConfig.ProxyStatsMatcher
新增至您的網格配置中。例如,若要全域啟用斷路器、請求重試、上游連線和請求逾時的統計數據,您可以將統計數據匹配器指定如下:
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
meshConfig:
defaultConfig:
proxyStatsMatcher:
inclusionRegexps:
- ".*outlier_detection.*"
- ".*upstream_rq_retry.*"
- ".*upstream_cx_.*"
inclusionSuffixes:
- "upstream_rq_timeout"
您也可以使用 proxy.istio.io/config
註釋來覆蓋每個代理程式的全域統計數據匹配配置。例如,若要配置與上述相同的統計數據生成包含,您可以將註釋新增至閘道代理程式或工作負載,如下所示:
metadata:
annotations:
proxy.istio.io/config: |-
proxyStatsMatcher:
inclusionRegexps:
- ".*outlier_detection.*"
- ".*upstream_rq_retry.*"
- ".*upstream_cx_.*"
inclusionSuffixes:
- "upstream_rq_timeout"