Build/Test Explorer

grpc/java/v1.70.x/branch/xds_url_map Target status: Passed

Target ran on for 36 min, 40 sec
1 test warning found.

Test Cases may be incomplete; some actions had XML processing errors. (No test.xml; action contains empty test suite.)

View expanded warning
Showing the last megabyte of test.log.  View the full log here.
39;49;00m--stats_port=8079"
- "--qps=25"
- "--rpc=EmptyCall"
- "--metadata=EmptyCall:xds_md:empty_ytpme"
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 00:48:17.285725 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 00:48:17.285909 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 00:48:18.340966 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-764f5c47cb-cmzm4']
I0125 00:48:18.341161 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-764f5c47cb-cmzm4 to start
I0125 00:48:20.409879 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-764f5c47cb-cmzm4 ready, IP: [{'ip': '10.60.0.42'}]
I0125 00:48:20.410108 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-764f5c47cb-cmzm4 to url_map/test_app_logs/interop-psm-url-map-client-20250125-0048-c3xaa_psm-grpc-client-764f5c47cb-cmzm4.log
I0125 00:48:20.410622 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0048-c3xaa] Starting log collection thread 125421643368000 for psm-grpc-client-764f5c47cb-cmzm4
I0125 00:48:20.410956 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 00:48:33.582195 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] affinity_test.TestHeaderBasedAffinity.test_client_config
I0125 00:48:33.582762 125421742620672 client_app.py:294] [psm-grpc-client-764f5c47cb-cmzm4] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 00:48:46.517806 125421742620672 client_app.py:322] [psm-grpc-client-764f5c47cb-cmzm4] xDS control plane channel:
I0125 00:48:48.529318 125421742620672 client_app.py:333] [psm-grpc-client-764f5c47cb-cmzm4] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 00:48:48.529545 125421742620672 client_app.py:304] [psm-grpc-client-764f5c47cb-cmzm4] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 00:48:48.591961 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:48:41.469125Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_0_affinity.test-header-based-affinity:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766098014664277'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_0_affinity.test-header-based-affinity:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_0_affinity.test-header-based-affinity:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_7173759894802766055
hashPolicy:
- header:
headerName: xds_md
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:48:42.204250Z'
name: cloud-internal-istio:cloud_mp_830293263384_7173759894802766055
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766098014664277'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_7173759894802766055
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - lbPolicy
- RING_HASH
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-affinity
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-affinity
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:48:42.401996Z'
name: cloud-internal-istio:cloud_mp_830293263384_7173759894802766055
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_7173759894802766055
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.1.2
portValue: 8080
healthStatus: HEALTHY
- endpoint:
address:
socketAddress:
address: 10.60.5.2
portValue: 8080
healthStatus: HEALTHY
- endpoint:
address:
socketAddress:
address: 10.60.12.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_9010255286000785574_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:48:41.076495Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/affinity.test-header-based-affinity:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766098014664277'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/affinity.test-header-based-affinity:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_0_affinity.test-header-based-affinity:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/f94569ab-7fe4-4af6-bd92-e695c25d1108
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.42
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.42
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] affinity_test.TestHeaderBasedAffinity.test_client_config
I0125 00:48:48.592285 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: affinity_test.TestHeaderBasedAffinity.test_client_config -----

[ RUN ] affinity_test.TestHeaderBasedAffinity.test_rpc_distribution
I0125 00:48:48.592608 125421742620672 grpc.py:75] [psm-grpc-client-764f5c47cb-cmzm4:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['EMPTY_CALL'], 'metadata': [{'type': 'UNARY_CALL', 'key': 'xds_md', 'value': 'unary_yranu'}, {'key': 'xds_md', 'value': 'empty_ytpme'}, {'type': 'UNARY_CALL', 'key': 'xds_md_numeric', 'value': '159'}]}), timeout=5, wait_for_ready=True)
I0125 00:48:50.638298 125421742620672 grpc.py:75] [psm-grpc-client-764f5c47cb-cmzm4:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 00:48:56.651966 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-764f5c47cb-cmzm4] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-affinity-6b784f768f-cxmdz: 150
rpcs_by_method:
EmptyCall:
psm-grpc-server-affinity-6b784f768f-cxmdz: 150

I0125 00:48:56.685342 125421742620672 grpc.py:75] [psm-grpc-client-764f5c47cb-cmzm4:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL', 'EMPTY_CALL']}), timeout=5, wait_for_ready=True)
I0125 00:48:58.692149 125421742620672 grpc.py:75] [psm-grpc-client-764f5c47cb-cmzm4:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 00:49:01.692315 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-764f5c47cb-cmzm4] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-affinity-6b784f768f-vs4xc: 58
psm-grpc-server-affinity-6b784f768f-cxmdz: 44
psm-grpc-server-affinity-6b784f768f-5h82r: 48
rpcs_by_method:
EmptyCall:
psm-grpc-server-affinity-6b784f768f-vs4xc: 30
psm-grpc-server-affinity-6b784f768f-cxmdz: 19
psm-grpc-server-affinity-6b784f768f-5h82r: 26
UnaryCall:
psm-grpc-server-affinity-6b784f768f-vs4xc: 28
psm-grpc-server-affinity-6b784f768f-cxmdz: 25
psm-grpc-server-affinity-6b784f768f-5h82r: 22

[ OK ] affinity_test.TestHeaderBasedAffinity.test_rpc_distribution
I0125 00:49:01.714553 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: affinity_test.TestHeaderBasedAffinity.test_rpc_distribution -----

I0125 00:49:01.714746 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestHeaderBasedAffinity teardown -----
I0125 00:49:01.725745 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 00:49:11.784583 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 00:49:11.784831 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0048-c3xaa
I0125 00:49:41.871417 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0048-c3xaa deleted
I0125 00:49:41.871741 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 00:49:41.871903 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-1a0hhwmw:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0048-c3xaa%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-1a0hhwmw%22;timeRange=2025-01-25T00:48:17.185652Z%2F2025-01-25T00:49:41.871573Z;cursorTimestamp=2025-01-25T00:48:33.582438Z?project=grpc-testing
I0125 00:49:41.871988 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestHeaderBasedAffinityMultipleHeaders -----
I0125 00:49:41.872036 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 00:49:41.872175 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 00:49:41.872306 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0049-t55rr
I0125 00:49:41.872578 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0049-t55rr: server_target=xds:///affinity.test-header-based-affinity-multiple-headers:8848 rpc=EmptyCall qps=25 metadata='EmptyCall:xds_md:empty_ytpme' secure_mode=False print_response=True
I0125 00:49:41.872720 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0049-t55rr%22;timeRange=2025-01-25T00:49:41.872642Z%2F2025-01-25T01:19:41.872642Z?project=grpc-testing
I0125 00:49:41.873153 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0049-t55rr
labels:
name: interop-psm-url-map-client-20250125-0049-t55rr
owner: xds-k8s-interop-test
...

I0125 00:49:41.885219 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0049-t55rr created
I0125 00:49:41.887822 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0049-t55rr
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-jwvn0ykk
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-jwvn0ykk
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-jwvn0ykk
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///affinity.test-header-based-affinity-multiple-headers:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=EmptyCall"
- "--metadata=EmptyCall:xds_md:empty_ytpme"
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 00:49:41.933681 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 00:49:41.933859 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 00:49:42.991418 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-dc6965f95-x6647']
I0125 00:49:42.991606 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-dc6965f95-x6647 to start
I0125 00:49:45.095530 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-dc6965f95-x6647 ready, IP: [{'ip': '10.60.0.43'}]
I0125 00:49:45.095775 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-dc6965f95-x6647 to url_map/test_app_logs/interop-psm-url-map-client-20250125-0049-t55rr_psm-grpc-client-dc6965f95-x6647.log
I0125 00:49:45.096132 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0049-t55rr] Starting log collection thread 125421643368000 for psm-grpc-client-dc6965f95-x6647
I0125 00:49:45.096380 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 00:49:49.192813 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] affinity_test.TestHeaderBasedAffinityMultipleHeaders.test_client_config
I0125 00:49:49.193255 125421742620672 client_app.py:294] [psm-grpc-client-dc6965f95-x6647] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 00:49:49.924106 125421742620672 client_app.py:322] [psm-grpc-client-dc6965f95-x6647] xDS control plane channel:
I0125 00:49:52.002327 125421742620672 client_app.py:333] [psm-grpc-client-dc6965f95-x6647] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 00:49:52.002642 125421742620672 client_app.py:304] [psm-grpc-client-dc6965f95-x6647] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 00:49:52.197293 125421742620672 retryers.py:213] Retrying framework.xds_url_map_testcase.XdsUrlMapTestCase._fetch_and_check_xds_config in 15.0 seconds as it raised AssertionError: [] has length of 0, expected 3. : insufficient endpoints in EDS: want=3 seen=[]
I0125 00:50:07.232411 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:50:04.016875Z'
name: cloud-internal-istio:cloud_mp_830293263384_7173759894802766055
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_7173759894802766055
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.1.2
portValue: 8080
healthStatus: HEALTHY
- endpoint:
address:
socketAddress:
address: 10.60.5.2
portValue: 8080
healthStatus: HEALTHY
- endpoint:
address:
socketAddress:
address: 10.60.12.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_9010255286000785574_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:50:02.186635Z'
name: cloud-internal-istio:cloud_mp_830293263384_7173759894802766055
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766191741662874'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_7173759894802766055
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - lbPolicy
- RING_HASH
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-affinity
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-affinity
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:50:02.204676Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/affinity.test-header-based-affinity-multiple-headers:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766191741662874'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/affinity.test-header-based-affinity-multiple-headers:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_1_affinity.test-header-based-affinity-multiple-headers:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:50:02.216363Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_1_affinity.test-header-based-affinity-multiple-headers:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766191741662874'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_1_affinity.test-header-based-affinity-multiple-headers:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_1_affinity.test-header-based-affinity-multiple-headers:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_7173759894802766055
hashPolicy:
- header:
headerName: xds_md
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/4ff82100-d67c-4288-92a7-16f2c791ee65
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.43
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.43
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] affinity_test.TestHeaderBasedAffinityMultipleHeaders.test_client_config
I0125 00:50:07.232779 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: affinity_test.TestHeaderBasedAffinityMultipleHeaders.test_client_config -----

[ RUN ] affinity_test.TestHeaderBasedAffinityMultipleHeaders.test_rpc_distribution
I0125 00:50:07.233108 125421742620672 grpc.py:75] [psm-grpc-client-dc6965f95-x6647:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['EMPTY_CALL'], 'metadata': [{'type': 'UNARY_CALL', 'key': 'xds_md', 'value': 'unary_yranu'}, {'key': 'xds_md', 'value': 'empty_ytpme'}, {'type': 'UNARY_CALL', 'key': 'xds_md_numeric', 'value': '159'}]}), timeout=5, wait_for_ready=True)
I0125 00:50:09.243961 125421742620672 grpc.py:75] [psm-grpc-client-dc6965f95-x6647:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 00:50:15.251596 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-dc6965f95-x6647] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-affinity-6b784f768f-cxmdz: 150
rpcs_by_method:
EmptyCall:
psm-grpc-server-affinity-6b784f768f-cxmdz: 150

I0125 00:50:15.276065 125421742620672 grpc.py:75] [psm-grpc-client-dc6965f95-x6647:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL', 'EMPTY_CALL'], 'metadata': [{'key': 'xds_md', 'value': 'empty_ytpme'}, {'type': 'UNARY_CALL', 'key': 'xds_md', 'value': '0'}]}), timeout=5, wait_for_ready=True)
I0125 00:50:17.281442 125421742620672 grpc.py:75] [psm-grpc-client-dc6965f95-x6647:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 00:50:20.281127 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-dc6965f95-x6647] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-affinity-6b784f768f-cxmdz: 75
psm-grpc-server-affinity-6b784f768f-5h82r: 75
rpcs_by_method:
EmptyCall:
psm-grpc-server-affinity-6b784f768f-cxmdz: 75
UnaryCall:
psm-grpc-server-affinity-6b784f768f-5h82r: 75

[ OK ] affinity_test.TestHeaderBasedAffinityMultipleHeaders.test_rpc_distribution
I0125 00:50:20.289284 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: affinity_test.TestHeaderBasedAffinityMultipleHeaders.test_rpc_distribution -----

I0125 00:50:20.289465 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestHeaderBasedAffinityMultipleHeaders teardown -----
I0125 00:50:20.353700 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 00:50:30.437942 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 00:50:30.438186 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0049-t55rr
I0125 00:51:00.524425 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0049-t55rr deleted
I0125 00:51:00.524760 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 00:51:00.524921 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-jwvn0ykk:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0049-t55rr%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-jwvn0ykk%22;timeRange=2025-01-25T00:49:41.872638Z%2F2025-01-25T00:51:00.524586Z;cursorTimestamp=2025-01-25T00:49:49.192992Z?project=grpc-testing
I0125 00:51:00.525025 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestBasicCsds -----
I0125 00:51:00.525070 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 00:51:00.525154 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 00:51:00.525269 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0051-fdj5q
I0125 00:51:00.525540 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0051-fdj5q: server_target=xds:///csds.test-basic-csds:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 00:51:00.525660 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0051-fdj5q%22;timeRange=2025-01-25T00:51:00.525601Z%2F2025-01-25T01:21:00.525601Z?project=grpc-testing
I0125 00:51:00.526107 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0051-fdj5q
labels:
name: interop-psm-url-map-client-20250125-0051-fdj5q
owner: xds-k8s-interop-test
...

I0125 00:51:00.569114 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0051-fdj5q created
I0125 00:51:00.571763 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0051-fdj5q
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-az02rd26
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-az02rd26
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-az02rd26
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///csds.test-basic-csds:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 00:51:00.616472 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 00:51:00.616631 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 00:51:01.665649 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-7b9c59bf6f-np6fj']
I0125 00:51:01.665830 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-7b9c59bf6f-np6fj to start
I0125 00:51:03.736926 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-7b9c59bf6f-np6fj ready, IP: [{'ip': '10.60.0.44'}]
I0125 00:51:03.737188 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-7b9c59bf6f-np6fj to url_map/test_app_logs/interop-psm-url-map-client-20250125-0051-fdj5q_psm-grpc-client-7b9c59bf6f-np6fj.log
I0125 00:51:03.737543 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0051-fdj5q] Starting log collection thread 125421643368000 for psm-grpc-client-7b9c59bf6f-np6fj
I0125 00:51:03.737791 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 00:51:07.811816 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] csds_test.TestBasicCsds.test_client_config
I0125 00:51:07.812237 125421742620672 client_app.py:294] [psm-grpc-client-7b9c59bf6f-np6fj] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 00:51:08.801627 125421742620672 client_app.py:322] [psm-grpc-client-7b9c59bf6f-np6fj] xDS control plane channel:
I0125 00:51:18.819118 125421742620672 client_app.py:322] [psm-grpc-client-7b9c59bf6f-np6fj] xDS control plane channel:
I0125 00:51:20.829186 125421742620672 client_app.py:333] [psm-grpc-client-7b9c59bf6f-np6fj] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 00:51:20.829424 125421742620672 client_app.py:304] [psm-grpc-client-7b9c59bf6f-np6fj] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 00:51:20.859717 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:51:18.904522Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_2_csds.test-basic-csds:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766261689519841'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_2_csds.test-basic-csds:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_2_csds.test-basic-csds:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:51:14.495210Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:51:18.807521Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766261689519841'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:51:18.889975Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/csds.test-basic-csds:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766261689519841'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/csds.test-basic-csds:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_2_csds.test-basic-csds:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/b1032315-a440-4a20-be3f-81c50ce599c2
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.44
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.44
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] csds_test.TestBasicCsds.test_client_config
I0125 00:51:20.860057 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: csds_test.TestBasicCsds.test_client_config -----

[ RUN ] csds_test.TestBasicCsds.test_rpc_distribution
I0125 00:51:20.860524 125421742620672 grpc.py:75] [psm-grpc-client-7b9c59bf6f-np6fj:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL', 'EMPTY_CALL']}), timeout=5, wait_for_ready=True)
I0125 00:51:22.871279 125421742620672 grpc.py:75] [psm-grpc-client-7b9c59bf6f-np6fj:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 50, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 00:51:23.878391 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-7b9c59bf6f-np6fj] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-7c7cf47f74-l26pq: 50
rpcs_by_method:
EmptyCall:
psm-grpc-server-7c7cf47f74-l26pq: 25
UnaryCall:
psm-grpc-server-7c7cf47f74-l26pq: 25

[ OK ] csds_test.TestBasicCsds.test_rpc_distribution
I0125 00:51:23.878779 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: csds_test.TestBasicCsds.test_rpc_distribution -----

I0125 00:51:23.878879 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestBasicCsds teardown -----
I0125 00:51:23.889034 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 00:51:33.952116 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 00:51:33.952375 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0051-fdj5q
I0125 00:52:04.052686 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0051-fdj5q deleted
I0125 00:52:04.053018 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 00:52:04.053182 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-az02rd26:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0051-fdj5q%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-az02rd26%22;timeRange=2025-01-25T00:51:00.525597Z%2F2025-01-25T00:52:04.052875Z;cursorTimestamp=2025-01-25T00:51:07.811984Z?project=grpc-testing
I0125 00:52:04.053284 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestAbortHalf -----
I0125 00:52:04.053334 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 00:52:04.053417 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 00:52:04.053532 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0052-g9fos
I0125 00:52:04.053820 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0052-g9fos: server_target=xds:///fault-injection.test-abort-half:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 00:52:04.053943 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0052-g9fos%22;timeRange=2025-01-25T00:52:04.053883Z%2F2025-01-25T01:22:04.053883Z?project=grpc-testing
I0125 00:52:04.054379 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0052-g9fos
labels:
name: interop-psm-url-map-client-20250125-0052-g9fos
owner: xds-k8s-interop-test
...

I0125 00:52:04.067799 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0052-g9fos created
I0125 00:52:04.070372 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0052-g9fos
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-qpodl4x8
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-qpodl4x8
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-qpodl4x8
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///fault-injection.test-abort-half:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 00:52:04.110619 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 00:52:04.110790 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 00:52:05.178271 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-7755d66f75-xnkpz']
I0125 00:52:05.178431 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-7755d66f75-xnkpz to start
I0125 00:52:07.239973 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-7755d66f75-xnkpz ready, IP: [{'ip': '10.60.0.45'}]
I0125 00:52:07.240219 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-7755d66f75-xnkpz to url_map/test_app_logs/interop-psm-url-map-client-20250125-0052-g9fos_psm-grpc-client-7755d66f75-xnkpz.log
I0125 00:52:07.240630 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0052-g9fos] Starting log collection thread 125421643368000 for psm-grpc-client-7755d66f75-xnkpz
I0125 00:52:07.240976 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 00:52:11.320891 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] fault_injection_test.TestAbortHalf.test_client_config
I0125 00:52:11.321361 125421742620672 client_app.py:294] [psm-grpc-client-7755d66f75-xnkpz] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 00:52:12.125307 125421742620672 client_app.py:322] [psm-grpc-client-7755d66f75-xnkpz] xDS control plane channel:
I0125 00:52:22.142861 125421742620672 client_app.py:322] [psm-grpc-client-7755d66f75-xnkpz] xDS control plane channel:
I0125 00:52:24.154254 125421742620672 client_app.py:333] [psm-grpc-client-7755d66f75-xnkpz] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 00:52:24.154476 125421742620672 client_app.py:304] [psm-grpc-client-7755d66f75-xnkpz] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 00:52:24.203232 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:52:21.145767Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/fault-injection.test-abort-half:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766325300987635'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/fault-injection.test-abort-half:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_8_fault-injection.test-abort-half:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:52:21.125603Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766325300987635'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:52:21.165051Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_8_fault-injection.test-abort-half:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766325300987635'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_8_fault-injection.test-abort-half:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
path: /grpc.testing.TestService/UnaryCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_8_fault-injection.test-abort-half:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
typedPerFilterConfig:
envoy.filters.http.fault: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- - delay
- fixedDelay: 20s
percentage:
denominator: MILLION
- - abort
- httpStatus: 401
percentage:
denominator: MILLION
numerator: 500000
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_8_fault-injection.test-abort-half:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:52:16.893434Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/6761e3f4-9dbb-4422-b1b3-f8ad5536f1a7
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.45
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.45
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] fault_injection_test.TestAbortHalf.test_client_config
I0125 00:52:24.203581 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: fault_injection_test.TestAbortHalf.test_client_config -----

[ RUN ] fault_injection_test.TestAbortHalf.test_rpc_distribution
I0125 00:52:24.203871 125421742620672 grpc.py:75] [psm-grpc-client-7755d66f75-xnkpz:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL']}), timeout=5, wait_for_ready=True)
I0125 00:52:26.212868 125421742620672 grpc.py:75] [psm-grpc-client-7755d66f75-xnkpz:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 10, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 00:52:26.611284 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-7755d66f75-xnkpz] << Received LoadBalancerStatsResponse:
num_failures: 5
rpcs_by_peer:
psm-grpc-server-7c7cf47f74-l26pq: 5
rpcs_by_method:
UnaryCall:
psm-grpc-server-7c7cf47f74-l26pq: 5

I0125 00:52:26.611532 125421742620672 grpc.py:75] [psm-grpc-client-7755d66f75-xnkpz:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:52:26.621834 125421742620672 xds_url_map_testcase.py:408] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-7755d66f75-xnkpz: before:
- method: EMPTY_CALL
rpcs_started: 393
result:
(0, OK): 393
- method: UNARY_CALL
rpcs_started: 453
result:
(0, OK): 212
(16, UNAUTHENTICATED): 241

I0125 00:52:42.638168 125421742620672 grpc.py:75] [psm-grpc-client-7755d66f75-xnkpz:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:52:42.644440 125421742620672 xds_url_map_testcase.py:418] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-7755d66f75-xnkpz: after:
- method: EMPTY_CALL
rpcs_started: 393
result:
(0, OK): 393
- method: UNARY_CALL
rpcs_started: 854
result:
(0, OK): 409
(16, UNAUTHENTICATED): 445

[ OK ] fault_injection_test.TestAbortHalf.test_rpc_distribution
I0125 00:52:42.644762 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: fault_injection_test.TestAbortHalf.test_rpc_distribution -----

I0125 00:52:42.644857 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestAbortHalf teardown -----
I0125 00:52:42.693462 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 00:52:52.785413 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 00:52:52.785665 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0052-g9fos
I0125 00:53:22.878090 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0052-g9fos deleted
I0125 00:53:22.878406 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 00:53:22.878570 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-qpodl4x8:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0052-g9fos%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-qpodl4x8%22;timeRange=2025-01-25T00:52:04.053879Z%2F2025-01-25T00:53:22.878243Z;cursorTimestamp=2025-01-25T00:52:11.321078Z?project=grpc-testing
I0125 00:53:22.878657 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestAlwaysAbort -----
I0125 00:53:22.878728 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 00:53:22.878850 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 00:53:22.878982 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0053-i016q
I0125 00:53:22.879257 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0053-i016q: server_target=xds:///fault-injection.test-always-abort:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 00:53:22.879424 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0053-i016q%22;timeRange=2025-01-25T00:53:22.879354Z%2F2025-01-25T01:23:22.879354Z?project=grpc-testing
I0125 00:53:22.879903 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0053-i016q
labels:
name: interop-psm-url-map-client-20250125-0053-i016q
owner: xds-k8s-interop-test
...

I0125 00:53:22.914272 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0053-i016q created
I0125 00:53:22.916769 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0053-i016q
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-kjoc4h87
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-kjoc4h87
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-kjoc4h87
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///fault-injection.test-always-abort:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 00:53:22.966734 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 00:53:22.966894 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 00:53:24.015918 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-bcfcfd9c-57vlz']
I0125 00:53:24.016090 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-bcfcfd9c-57vlz to start
I0125 00:53:26.088125 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-bcfcfd9c-57vlz ready, IP: [{'ip': '10.60.0.46'}]
I0125 00:53:26.088376 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-bcfcfd9c-57vlz to url_map/test_app_logs/interop-psm-url-map-client-20250125-0053-i016q_psm-grpc-client-bcfcfd9c-57vlz.log
I0125 00:53:26.088650 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0053-i016q] Starting log collection thread 125421643368000 for psm-grpc-client-bcfcfd9c-57vlz
I0125 00:53:26.088753 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 00:53:30.196780 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] fault_injection_test.TestAlwaysAbort.test_client_config
I0125 00:53:30.197238 125421742620672 client_app.py:294] [psm-grpc-client-bcfcfd9c-57vlz] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 00:53:31.307807 125421742620672 client_app.py:322] [psm-grpc-client-bcfcfd9c-57vlz] xDS control plane channel:
I0125 00:53:41.324383 125421742620672 client_app.py:322] [psm-grpc-client-bcfcfd9c-57vlz] xDS control plane channel:
I0125 00:53:43.334236 125421742620672 client_app.py:333] [psm-grpc-client-bcfcfd9c-57vlz] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 00:53:43.334497 125421742620672 client_app.py:304] [psm-grpc-client-bcfcfd9c-57vlz] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 00:53:43.381331 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:53:36.920067Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766400763809663'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:53:36.435319Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_6_fault-injection.test-always-abort:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766400763809663'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_6_fault-injection.test-always-abort:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
path: /grpc.testing.TestService/UnaryCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_6_fault-injection.test-always-abort:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
typedPerFilterConfig:
envoy.filters.http.fault: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- - delay
- fixedDelay: 20s
percentage:
denominator: MILLION
- - abort
- httpStatus: 401
percentage:
denominator: MILLION
numerator: 1000000
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_6_fault-injection.test-always-abort:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:53:36.414660Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/fault-injection.test-always-abort:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766400763809663'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/fault-injection.test-always-abort:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_6_fault-injection.test-always-abort:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:53:37.038209Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/63d15d1d-44a2-4084-a5c7-1ebe8364d59d
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.46
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.46
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] fault_injection_test.TestAlwaysAbort.test_client_config
I0125 00:53:43.381654 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: fault_injection_test.TestAlwaysAbort.test_client_config -----

[ RUN ] fault_injection_test.TestAlwaysAbort.test_rpc_distribution
I0125 00:53:43.381931 125421742620672 grpc.py:75] [psm-grpc-client-bcfcfd9c-57vlz:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL']}), timeout=5, wait_for_ready=True)
I0125 00:53:45.392222 125421742620672 grpc.py:75] [psm-grpc-client-bcfcfd9c-57vlz:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 10, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 00:53:45.796749 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-bcfcfd9c-57vlz] << Received LoadBalancerStatsResponse:
num_failures: 10
rpcs_by_peer: {}
rpcs_by_method: {}

I0125 00:53:45.796955 125421742620672 grpc.py:75] [psm-grpc-client-bcfcfd9c-57vlz:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:53:45.808940 125421742620672 xds_url_map_testcase.py:408] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-bcfcfd9c-57vlz: before:
- method: EMPTY_CALL
rpcs_started: 393
result:
(0, OK): 393
- method: UNARY_CALL
rpcs_started: 453
result:
(16, UNAUTHENTICATED): 453

I0125 00:54:01.825289 125421742620672 grpc.py:75] [psm-grpc-client-bcfcfd9c-57vlz:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:54:01.831752 125421742620672 xds_url_map_testcase.py:418] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-bcfcfd9c-57vlz: after:
- method: EMPTY_CALL
rpcs_started: 393
result:
(0, OK): 393
- method: UNARY_CALL
rpcs_started: 854
result:
(16, UNAUTHENTICATED): 854

[ OK ] fault_injection_test.TestAlwaysAbort.test_rpc_distribution
I0125 00:54:01.832053 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: fault_injection_test.TestAlwaysAbort.test_rpc_distribution -----

I0125 00:54:01.832156 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestAlwaysAbort teardown -----
I0125 00:54:01.842365 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 00:54:11.905961 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 00:54:11.906169 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0053-i016q
I0125 00:54:41.996012 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0053-i016q deleted
I0125 00:54:41.996337 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 00:54:41.996496 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-kjoc4h87:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0053-i016q%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-kjoc4h87%22;timeRange=2025-01-25T00:53:22.879350Z%2F2025-01-25T00:54:41.996179Z;cursorTimestamp=2025-01-25T00:53:30.196968Z?project=grpc-testing
[ RUN ] fault_injection_test.TestAlwaysDelay.test_client_config
[ SKIPPED ] fault_injection_test.TestAlwaysDelay.test_client_config
I0125 00:54:41.996687 125421742620672 base_testcase.py:60] ----- PSM Test Case SKIPPED: fault_injection_test.TestAlwaysDelay.test_client_config -----
Reason for skipping: 20% RPC might pass immediately, reason unknown
[ RUN ] fault_injection_test.TestAlwaysDelay.test_rpc_distribution
[ SKIPPED ] fault_injection_test.TestAlwaysDelay.test_rpc_distribution
I0125 00:54:41.996809 125421742620672 base_testcase.py:60] ----- PSM Test Case SKIPPED: fault_injection_test.TestAlwaysDelay.test_rpc_distribution -----
Reason for skipping: 20% RPC might pass immediately, reason unknown
I0125 00:54:41.996868 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestDelayHalf -----
I0125 00:54:41.996907 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 00:54:41.996987 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 00:54:41.997089 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0054-9tokt
I0125 00:54:41.997366 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0054-9tokt: server_target=xds:///fault-injection.test-delay-half:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 00:54:41.997478 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0054-9tokt%22;timeRange=2025-01-25T00:54:41.997418Z%2F2025-01-25T01:24:41.997418Z?project=grpc-testing
I0125 00:54:41.997907 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0054-9tokt
labels:
name: interop-psm-url-map-client-20250125-0054-9tokt
owner: xds-k8s-interop-test
...

I0125 00:54:42.008507 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0054-9tokt created
I0125 00:54:42.011170 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0054-9tokt
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-94hq49nj
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-94hq49nj
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-94hq49nj
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///fault-injection.test-delay-half:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 00:54:42.057318 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 00:54:42.057505 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 00:54:43.101374 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-5fc656b6d9-flvlj']
I0125 00:54:43.101575 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-5fc656b6d9-flvlj to start
I0125 00:54:45.202107 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-5fc656b6d9-flvlj ready, IP: [{'ip': '10.60.0.47'}]
I0125 00:54:45.202372 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-5fc656b6d9-flvlj to url_map/test_app_logs/interop-psm-url-map-client-20250125-0054-9tokt_psm-grpc-client-5fc656b6d9-flvlj.log
I0125 00:54:45.202790 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0054-9tokt] Starting log collection thread 125421643368000 for psm-grpc-client-5fc656b6d9-flvlj
I0125 00:54:45.203080 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 00:54:49.293052 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] fault_injection_test.TestDelayHalf.test_client_config
I0125 00:54:49.293552 125421742620672 client_app.py:294] [psm-grpc-client-5fc656b6d9-flvlj] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 00:54:50.109624 125421742620672 client_app.py:322] [psm-grpc-client-5fc656b6d9-flvlj] xDS control plane channel:
I0125 00:55:00.128408 125421742620672 client_app.py:322] [psm-grpc-client-5fc656b6d9-flvlj] xDS control plane channel:
I0125 00:55:02.138508 125421742620672 client_app.py:333] [psm-grpc-client-5fc656b6d9-flvlj] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 00:55:02.138932 125421742620672 client_app.py:304] [psm-grpc-client-5fc656b6d9-flvlj] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 00:55:02.169955 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:54:53.218419Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_7_fault-injection.test-delay-half:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766475566443434'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_7_fault-injection.test-delay-half:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
path: /grpc.testing.TestService/UnaryCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_7_fault-injection.test-delay-half:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
typedPerFilterConfig:
envoy.filters.http.fault: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- - delay
- fixedDelay: 20s
percentage:
denominator: MILLION
numerator: 500000
- - abort
- httpStatus: 401
percentage:
denominator: MILLION
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_7_fault-injection.test-delay-half:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:54:52.836495Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/fault-injection.test-delay-half:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766475566443434'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/fault-injection.test-delay-half:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_7_fault-injection.test-delay-half:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:54:54.614953Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:54:54.493637Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766475566443434'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/de13ac69-d8bf-4e7f-a498-be0894c41c46
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.47
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.47
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] fault_injection_test.TestDelayHalf.test_client_config
I0125 00:55:02.170328 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: fault_injection_test.TestDelayHalf.test_client_config -----

[ RUN ] fault_injection_test.TestDelayHalf.test_rpc_distribution
I0125 00:55:02.170665 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL'], 'timeoutSec': 1}), timeout=5, wait_for_ready=True)
I0125 00:55:04.179133 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 10, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 00:55:05.600411 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-5fc656b6d9-flvlj] << Received LoadBalancerStatsResponse:
num_failures: 6
rpcs_by_peer:
psm-grpc-server-7c7cf47f74-l26pq: 4
rpcs_by_method:
UnaryCall:
psm-grpc-server-7c7cf47f74-l26pq: 4

I0125 00:55:05.600635 125421742620672 fault_injection_test.py:92] Waiting for RPC backlog to clear for 20 seconds
I0125 00:55:05.600833 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:05.618331 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=468 completed=255
I0125 00:55:06.619700 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:06.620092 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:06.623628 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=494 completed=280
I0125 00:55:07.625023 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:07.625248 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:07.628888 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=519 completed=309
I0125 00:55:08.630259 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:08.630509 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:08.637007 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=544 completed=335
I0125 00:55:09.638390 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:09.638612 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:09.641631 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=569 completed=390
I0125 00:55:10.642990 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:10.643220 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:10.649801 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=594 completed=426
I0125 00:55:11.651095 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:11.651422 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:11.654097 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=620 completed=468
I0125 00:55:12.655395 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:12.655597 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:12.658658 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=645 completed=503
I0125 00:55:13.659934 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:13.660164 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:13.663120 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=670 completed=540
I0125 00:55:14.664406 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:14.664636 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:14.667607 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=695 completed=582
I0125 00:55:15.668877 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:15.669130 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:15.673004 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=720 completed=617
I0125 00:55:16.674333 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:16.674581 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:16.677766 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=745 completed=660
I0125 00:55:17.679132 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:17.679393 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:17.682864 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=770 completed=697
I0125 00:55:18.684123 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:18.684348 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:18.688327 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=795 completed=738
I0125 00:55:19.689578 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:19.689799 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:19.692983 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=821 completed=777
I0125 00:55:20.694195 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:20.694602 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:20.697775 125421742620672 fault_injection_test.py:105] RPC backlog exist: rpc_type=UNARY_CALL started=846 completed=813
I0125 00:55:21.699108 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:21.699348 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:21.702325 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=UNARY_CALL started=871 completed=853
I0125 00:55:21.702509 125421742620672 fault_injection_test.py:114] RPC backlog clear: rpc_type=EMPTY_CALL started=383 completed=383
I0125 00:55:21.702639 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:21.706580 125421742620672 xds_url_map_testcase.py:408] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-5fc656b6d9-flvlj: before:
- method: EMPTY_CALL
rpcs_started: 383
result:
(0, OK): 383
- method: UNARY_CALL
rpcs_started: 871
result:
(0, OK): 433
(4, DEADLINE_EXCEEDED): 420

I0125 00:55:37.722895 125421742620672 grpc.py:75] [psm-grpc-client-5fc656b6d9-flvlj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:55:37.728065 125421742620672 xds_url_map_testcase.py:418] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-5fc656b6d9-flvlj: after:
- method: EMPTY_CALL
rpcs_started: 383
result:
(0, OK): 383
- method: UNARY_CALL
rpcs_started: 1271
result:
(0, OK): 628
(4, DEADLINE_EXCEEDED): 630

[ OK ] fault_injection_test.TestDelayHalf.test_rpc_distribution
I0125 00:55:37.728418 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: fault_injection_test.TestDelayHalf.test_rpc_distribution -----

I0125 00:55:37.728525 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestDelayHalf teardown -----
I0125 00:55:37.800089 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 00:55:47.900757 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 00:55:47.901003 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0054-9tokt
I0125 00:56:17.988634 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0054-9tokt deleted
I0125 00:56:17.988978 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 00:56:17.989130 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-94hq49nj:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0054-9tokt%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-94hq49nj%22;timeRange=2025-01-25T00:54:41.997415Z%2F2025-01-25T00:56:17.988830Z;cursorTimestamp=2025-01-25T00:54:49.293256Z?project=grpc-testing
I0125 00:56:17.989214 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestNonMatchingFaultInjection -----
I0125 00:56:17.989271 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 00:56:17.989359 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 00:56:17.989469 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0056-90kez
I0125 00:56:17.989766 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0056-90kez: server_target=xds:///fault-injection.test-non-matching-fault-injection:8848 rpc=EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 00:56:17.989896 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0056-90kez%22;timeRange=2025-01-25T00:56:17.989831Z%2F2025-01-25T01:26:17.989831Z?project=grpc-testing
I0125 00:56:17.990344 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0056-90kez
labels:
name: interop-psm-url-map-client-20250125-0056-90kez
owner: xds-k8s-interop-test
...

I0125 00:56:18.021350 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0056-90kez created
I0125 00:56:18.024367 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0056-90kez
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-j29yc2ll
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-j29yc2ll
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-j29yc2ll
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///fault-injection.test-non-matching-fault-injection:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 00:56:18.071741 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 00:56:18.072124 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 00:56:19.121958 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-6c6b45dbbc-2fcjb']
I0125 00:56:19.122163 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-6c6b45dbbc-2fcjb to start
I0125 00:56:21.189649 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-6c6b45dbbc-2fcjb ready, IP: [{'ip': '10.60.0.48'}]
I0125 00:56:21.189923 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-6c6b45dbbc-2fcjb to url_map/test_app_logs/interop-psm-url-map-client-20250125-0056-90kez_psm-grpc-client-6c6b45dbbc-2fcjb.log
I0125 00:56:21.190315 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0056-90kez] Starting log collection thread 125421643368000 for psm-grpc-client-6c6b45dbbc-2fcjb
I0125 00:56:21.190611 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 00:56:25.267494 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] fault_injection_test.TestNonMatchingFaultInjection.test_client_config
I0125 00:56:25.267956 125421742620672 client_app.py:294] [psm-grpc-client-6c6b45dbbc-2fcjb] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 00:56:25.916131 125421742620672 client_app.py:322] [psm-grpc-client-6c6b45dbbc-2fcjb] xDS control plane channel:
I0125 00:56:35.935574 125421742620672 client_app.py:322] [psm-grpc-client-6c6b45dbbc-2fcjb] xDS control plane channel:
I0125 00:56:37.945179 125421742620672 client_app.py:333] [psm-grpc-client-6c6b45dbbc-2fcjb] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 00:56:37.945417 125421742620672 client_app.py:304] [psm-grpc-client-6c6b45dbbc-2fcjb] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 00:56:37.986734 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:56:29.805209Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/fault-injection.test-non-matching-fault-injection:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766566103377997'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/fault-injection.test-non-matching-fault-injection:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_4_fault-injection.test-non-matching-fault-injection:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:56:31.102838Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766566103377997'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:56:31.224011Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:56:30.095772Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_4_fault-injection.test-non-matching-fault-injection:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766566103377997'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_4_fault-injection.test-non-matching-fault-injection:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
path: /grpc.testing.TestService/UnaryCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_4_fault-injection.test-non-matching-fault-injection:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
typedPerFilterConfig:
envoy.filters.http.fault: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- - delay
- fixedDelay: 20s
percentage:
denominator: MILLION
numerator: 1000000
- - abort
- httpStatus: 401
percentage:
denominator: MILLION
numerator: 1000000
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_4_fault-injection.test-non-matching-fault-injection:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/25f46564-3203-41e4-8ccb-cf4c8ef337e9
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.48
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.48
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] fault_injection_test.TestNonMatchingFaultInjection.test_client_config
I0125 00:56:37.987090 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: fault_injection_test.TestNonMatchingFaultInjection.test_client_config -----

[ RUN ] fault_injection_test.TestNonMatchingFaultInjection.test_rpc_distribution
I0125 00:56:37.987423 125421742620672 grpc.py:75] [psm-grpc-client-6c6b45dbbc-2fcjb:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:56:38.006253 125421742620672 xds_url_map_testcase.py:408] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-6c6b45dbbc-2fcjb: before:
- method: EMPTY_CALL
rpcs_started: 372
result:
(0, OK): 372

I0125 00:56:54.022619 125421742620672 grpc.py:75] [psm-grpc-client-6c6b45dbbc-2fcjb:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:56:54.028895 125421742620672 xds_url_map_testcase.py:418] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-6c6b45dbbc-2fcjb: after:
- method: EMPTY_CALL
rpcs_started: 773
result:
(0, OK): 773

[ OK ] fault_injection_test.TestNonMatchingFaultInjection.test_rpc_distribution
I0125 00:56:54.029214 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: fault_injection_test.TestNonMatchingFaultInjection.test_rpc_distribution -----

I0125 00:56:54.029310 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestNonMatchingFaultInjection teardown -----
I0125 00:56:54.040066 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 00:57:04.101490 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 00:57:04.101762 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0056-90kez
I0125 00:57:34.201590 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0056-90kez deleted
I0125 00:57:34.202005 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 00:57:34.202183 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-j29yc2ll:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0056-90kez%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-j29yc2ll%22;timeRange=2025-01-25T00:56:17.989828Z%2F2025-01-25T00:57:34.201827Z;cursorTimestamp=2025-01-25T00:56:25.267671Z?project=grpc-testing
I0125 00:57:34.202306 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestZeroPercentFaultInjection -----
I0125 00:57:34.202351 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 00:57:34.202443 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 00:57:34.202582 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0057-d6rfg
I0125 00:57:34.202919 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0057-d6rfg: server_target=xds:///fault-injection.test-zero-percent-fault-injection:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 00:57:34.203047 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0057-d6rfg%22;timeRange=2025-01-25T00:57:34.202986Z%2F2025-01-25T01:27:34.202986Z?project=grpc-testing
I0125 00:57:34.203529 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0057-d6rfg
labels:
name: interop-psm-url-map-client-20250125-0057-d6rfg
owner: xds-k8s-interop-test
...

I0125 00:57:34.216223 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0057-d6rfg created
I0125 00:57:34.219016 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0057-d6rfg
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-i2nhzx6w
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-i2nhzx6w
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-i2nhzx6w
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///fault-injection.test-zero-percent-fault-injection:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 00:57:34.263622 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 00:57:34.263803 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 00:57:35.308304 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-7cfbd79fd-jngjh']
I0125 00:57:35.308568 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-7cfbd79fd-jngjh to start
I0125 00:57:37.371766 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-7cfbd79fd-jngjh ready, IP: [{'ip': '10.60.0.49'}]
I0125 00:57:37.372019 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-7cfbd79fd-jngjh to url_map/test_app_logs/interop-psm-url-map-client-20250125-0057-d6rfg_psm-grpc-client-7cfbd79fd-jngjh.log
I0125 00:57:37.372387 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0057-d6rfg] Starting log collection thread 125421643368000 for psm-grpc-client-7cfbd79fd-jngjh
I0125 00:57:37.372632 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 00:57:41.448364 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] fault_injection_test.TestZeroPercentFaultInjection.test_client_config
I0125 00:57:41.448832 125421742620672 client_app.py:294] [psm-grpc-client-7cfbd79fd-jngjh] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 00:57:42.128118 125421742620672 client_app.py:322] [psm-grpc-client-7cfbd79fd-jngjh] xDS control plane channel:
I0125 00:57:52.147460 125421742620672 client_app.py:322] [psm-grpc-client-7cfbd79fd-jngjh] xDS control plane channel:
I0125 00:57:54.156633 125421742620672 client_app.py:333] [psm-grpc-client-7cfbd79fd-jngjh] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 00:57:54.156869 125421742620672 client_app.py:304] [psm-grpc-client-7cfbd79fd-jngjh] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 00:57:54.195307 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:57:46.931530Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/fault-injection.test-zero-percent-fault-injection:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766642841748418'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/fault-injection.test-zero-percent-fault-injection:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_3_fault-injection.test-zero-percent-fault-injection:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:57:47.126674Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:57:46.909781Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766642841748418'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:57:46.995523Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_3_fault-injection.test-zero-percent-fault-injection:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766642841748418'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_3_fault-injection.test-zero-percent-fault-injection:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
path: /grpc.testing.TestService/UnaryCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_3_fault-injection.test-zero-percent-fault-injection:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
typedPerFilterConfig:
envoy.filters.http.fault: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- - delay
- fixedDelay: 20s
percentage:
denominator: MILLION
- - abort
- httpStatus: 401
percentage:
denominator: MILLION
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_3_fault-injection.test-zero-percent-fault-injection:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/1820bcc6-b31f-4b2c-8a7a-93e66523a4d0
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.49
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.49
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] fault_injection_test.TestZeroPercentFaultInjection.test_client_config
I0125 00:57:54.195678 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: fault_injection_test.TestZeroPercentFaultInjection.test_client_config -----

[ RUN ] fault_injection_test.TestZeroPercentFaultInjection.test_rpc_distribution
I0125 00:57:54.196029 125421742620672 grpc.py:75] [psm-grpc-client-7cfbd79fd-jngjh:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL']}), timeout=5, wait_for_ready=True)
I0125 00:57:56.210697 125421742620672 grpc.py:75] [psm-grpc-client-7cfbd79fd-jngjh:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 10, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 00:57:56.625348 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-7cfbd79fd-jngjh] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-7c7cf47f74-l26pq: 10
rpcs_by_method:
UnaryCall:
psm-grpc-server-7c7cf47f74-l26pq: 10

I0125 00:57:56.625590 125421742620672 grpc.py:75] [psm-grpc-client-7cfbd79fd-jngjh:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:57:56.635395 125421742620672 xds_url_map_testcase.py:408] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-7cfbd79fd-jngjh: before:
- method: EMPTY_CALL
rpcs_started: 376
result:
(0, OK): 376
- method: UNARY_CALL
rpcs_started: 436
result:
(0, OK): 436

I0125 00:58:12.651753 125421742620672 grpc.py:75] [psm-grpc-client-7cfbd79fd-jngjh:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 00:58:12.657497 125421742620672 xds_url_map_testcase.py:418] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-7cfbd79fd-jngjh: after:
- method: EMPTY_CALL
rpcs_started: 376
result:
(0, OK): 376
- method: UNARY_CALL
rpcs_started: 837
result:
(0, OK): 837

[ OK ] fault_injection_test.TestZeroPercentFaultInjection.test_rpc_distribution
I0125 00:58:12.657834 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: fault_injection_test.TestZeroPercentFaultInjection.test_rpc_distribution -----

I0125 00:58:12.657941 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestZeroPercentFaultInjection teardown -----
I0125 00:58:12.722051 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 00:58:22.812783 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 00:58:22.813029 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0057-d6rfg
I0125 00:58:52.909465 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0057-d6rfg deleted
I0125 00:58:52.909846 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 00:58:52.910025 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-i2nhzx6w:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0057-d6rfg%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-i2nhzx6w%22;timeRange=2025-01-25T00:57:34.202982Z%2F2025-01-25T00:58:52.909665Z;cursorTimestamp=2025-01-25T00:57:41.448554Z?project=grpc-testing
I0125 00:58:52.910127 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestExactMatch -----
I0125 00:58:52.910179 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 00:58:52.910272 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 00:58:52.910398 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0058-kb4wt
I0125 00:58:52.910728 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0058-kb4wt: server_target=xds:///header-matching.test-exact-match:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 00:58:52.910859 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0058-kb4wt%22;timeRange=2025-01-25T00:58:52.910795Z%2F2025-01-25T01:28:52.910795Z?project=grpc-testing
I0125 00:58:52.911366 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0058-kb4wt
labels:
name: interop-psm-url-map-client-20250125-0058-kb4wt
owner: xds-k8s-interop-test
...

I0125 00:58:52.944789 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0058-kb4wt created
I0125 00:58:52.947441 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0058-kb4wt
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-1uazcn0m
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-1uazcn0m
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-1uazcn0m
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///header-matching.test-exact-match:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 00:58:52.998442 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 00:58:52.998627 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 00:58:54.045155 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-6f4647846d-p5kjw']
I0125 00:58:54.045373 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-6f4647846d-p5kjw to start
I0125 00:58:56.116230 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-6f4647846d-p5kjw ready, IP: [{'ip': '10.60.0.50'}]
I0125 00:58:56.116530 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-6f4647846d-p5kjw to url_map/test_app_logs/interop-psm-url-map-client-20250125-0058-kb4wt_psm-grpc-client-6f4647846d-p5kjw.log
I0125 00:58:56.116928 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0058-kb4wt] Starting log collection thread 125421643368000 for psm-grpc-client-6f4647846d-p5kjw
I0125 00:58:56.117203 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 00:59:00.247665 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] header_matching_test.TestExactMatch.test_client_config
I0125 00:59:00.248151 125421742620672 client_app.py:294] [psm-grpc-client-6f4647846d-p5kjw] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 00:59:01.225522 125421742620672 client_app.py:322] [psm-grpc-client-6f4647846d-p5kjw] xDS control plane channel:
I0125 00:59:03.390941 125421742620672 client_app.py:333] [psm-grpc-client-6f4647846d-p5kjw] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 00:59:03.391273 125421742620672 client_app.py:304] [psm-grpc-client-6f4647846d-p5kjw] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 00:59:03.715543 125421742620672 retryers.py:213] Retrying framework.xds_url_map_testcase.XdsUrlMapTestCase._fetch_and_check_xds_config in 15.0 seconds as it raised AssertionError: [] has length of 0, expected 2. : insufficient endpoints in EDS: want=2 seen=[]
I0125 00:59:18.754746 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:59:14.709925Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '3'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:59:14.709925Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '3'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:59:17.682226Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766746407644609'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:59:17.682226Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766746407644609'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:59:17.705863Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/header-matching.test-exact-match:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766746407644609'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/header-matching.test-exact-match:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_9_header-matching.test-exact-match:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T00:59:17.723898Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_9_header-matching.test-exact-match:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766746407644609'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_9_header-matching.test-exact-match:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
headers:
- exactMatch: empty_ytpme
name: xds_md
prefix: /
name: URL_MAP/830293263384_interop-psm-url-map-url-map_9_header-matching.test-exact-match:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_9_header-matching.test-exact-match:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/af977bb7-ee3e-4713-9f54-1b9668c0787f
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.50
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.50
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] header_matching_test.TestExactMatch.test_client_config
I0125 00:59:18.755333 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: header_matching_test.TestExactMatch.test_client_config -----

[ RUN ] header_matching_test.TestExactMatch.test_rpc_distribution
I0125 00:59:18.755905 125421742620672 grpc.py:75] [psm-grpc-client-6f4647846d-p5kjw:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['EMPTY_CALL'], 'metadata': [{'type': 'UNARY_CALL', 'key': 'xds_md', 'value': 'unary_yranu'}, {'key': 'xds_md', 'value': 'empty_ytpme'}, {'type': 'UNARY_CALL', 'key': 'xds_md_numeric', 'value': '159'}]}), timeout=5, wait_for_ready=True)
I0125 00:59:20.769060 125421742620672 grpc.py:75] [psm-grpc-client-6f4647846d-p5kjw:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 00:59:26.766695 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-6f4647846d-p5kjw] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 150
rpcs_by_method:
EmptyCall:
psm-grpc-server-alternative-79bb77f689-55phr: 150

[ OK ] header_matching_test.TestExactMatch.test_rpc_distribution
I0125 00:59:26.767052 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: header_matching_test.TestExactMatch.test_rpc_distribution -----

I0125 00:59:26.767149 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestExactMatch teardown -----
I0125 00:59:26.778015 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 00:59:36.846973 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 00:59:36.847192 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0058-kb4wt
I0125 01:00:06.911931 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0058-kb4wt deleted
I0125 01:00:06.912271 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:00:06.912485 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-1uazcn0m:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0058-kb4wt%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-1uazcn0m%22;timeRange=2025-01-25T00:58:52.910792Z%2F2025-01-25T01:00:06.912096Z;cursorTimestamp=2025-01-25T00:59:00.247887Z?project=grpc-testing
I0125 01:00:06.912598 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestInvertMatch -----
I0125 01:00:06.912664 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:00:06.912803 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:00:06.912942 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0100-i1sco
I0125 01:00:06.913265 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0100-i1sco: server_target=xds:///header-matching.test-invert-match:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:00:06.913428 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0100-i1sco%22;timeRange=2025-01-25T01:00:06.913347Z%2F2025-01-25T01:30:06.913347Z?project=grpc-testing
I0125 01:00:06.913887 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0100-i1sco
labels:
name: interop-psm-url-map-client-20250125-0100-i1sco
owner: xds-k8s-interop-test
...

I0125 01:00:06.925354 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0100-i1sco created
I0125 01:00:06.927931 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0100-i1sco
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-mh89ucp2
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-mh89ucp2
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-mh89ucp2
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///header-matching.test-invert-match:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:00:06.973741 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:00:06.973927 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:00:08.027662 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-555d7884c4-46bc4']
I0125 01:00:08.027914 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-555d7884c4-46bc4 to start
I0125 01:00:10.095200 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-555d7884c4-46bc4 ready, IP: [{'ip': '10.60.0.51'}]
I0125 01:00:10.095458 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-555d7884c4-46bc4 to url_map/test_app_logs/interop-psm-url-map-client-20250125-0100-i1sco_psm-grpc-client-555d7884c4-46bc4.log
I0125 01:00:10.095874 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0100-i1sco] Starting log collection thread 125421643368000 for psm-grpc-client-555d7884c4-46bc4
I0125 01:00:10.096107 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:00:14.171176 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] header_matching_test.TestInvertMatch.test_client_config
I0125 01:00:14.171684 125421742620672 client_app.py:294] [psm-grpc-client-555d7884c4-46bc4] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:00:14.924258 125421742620672 client_app.py:322] [psm-grpc-client-555d7884c4-46bc4] xDS control plane channel:
I0125 01:00:24.948004 125421742620672 client_app.py:322] [psm-grpc-client-555d7884c4-46bc4] xDS control plane channel:
I0125 01:00:26.962469 125421742620672 client_app.py:333] [psm-grpc-client-555d7884c4-46bc4] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:00:26.962790 125421742620672 client_app.py:304] [psm-grpc-client-555d7884c4-46bc4] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:00:27.010191 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:00:19.806553Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766800648538141'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:00:19.806553Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766800648538141'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:00:21.510662Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:00:20.019651Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:00:18.616078Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/header-matching.test-invert-match:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766800648538141'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/header-matching.test-invert-match:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_13_header-matching.test-invert-match:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:00:18.844041Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_13_header-matching.test-invert-match:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766800648538141'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_13_header-matching.test-invert-match:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
headers:
- exactMatch: unary_yranu
invertMatch: true
name: xds_md
prefix: /
name: URL_MAP/830293263384_interop-psm-url-map-url-map_13_header-matching.test-invert-match:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_13_header-matching.test-invert-match:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/7e90cb9d-3352-4e51-8538-d3d45eee0aef
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.51
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.51
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] header_matching_test.TestInvertMatch.test_client_config
I0125 01:00:27.010618 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: header_matching_test.TestInvertMatch.test_client_config -----

[ RUN ] header_matching_test.TestInvertMatch.test_rpc_distribution
I0125 01:00:27.010999 125421742620672 grpc.py:75] [psm-grpc-client-555d7884c4-46bc4:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL', 'EMPTY_CALL'], 'metadata': [{'type': 'UNARY_CALL', 'key': 'xds_md', 'value': 'unary_yranu'}, {'key': 'xds_md', 'value': 'empty_ytpme'}, {'type': 'UNARY_CALL', 'key': 'xds_md_numeric', 'value': '159'}]}), timeout=5, wait_for_ready=True)
I0125 01:00:29.021955 125421742620672 grpc.py:75] [psm-grpc-client-555d7884c4-46bc4:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:00:32.094356 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-555d7884c4-46bc4] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 75
psm-grpc-server-7c7cf47f74-l26pq: 75
rpcs_by_method:
EmptyCall:
psm-grpc-server-alternative-79bb77f689-55phr: 75
UnaryCall:
psm-grpc-server-7c7cf47f74-l26pq: 75

[ OK ] header_matching_test.TestInvertMatch.test_rpc_distribution
I0125 01:00:32.094781 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: header_matching_test.TestInvertMatch.test_rpc_distribution -----

I0125 01:00:32.094896 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestInvertMatch teardown -----
I0125 01:00:32.151384 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:00:42.236808 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:00:42.237087 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0100-i1sco
I0125 01:01:12.309402 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0100-i1sco deleted
I0125 01:01:12.309730 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:01:12.309883 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-mh89ucp2:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0100-i1sco%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-mh89ucp2%22;timeRange=2025-01-25T01:00:06.913342Z%2F2025-01-25T01:01:12.309567Z;cursorTimestamp=2025-01-25T01:00:14.171384Z?project=grpc-testing
[ RUN ] header_matching_test.TestPrefixMatch.test_client_config
[ SKIPPED ] header_matching_test.TestPrefixMatch.test_client_config
I0125 01:01:12.310067 125421742620672 base_testcase.py:60] ----- PSM Test Case SKIPPED: header_matching_test.TestPrefixMatch.test_client_config -----
Reason for skipping: the xDS config is good, but distribution is wrong.
[ RUN ] header_matching_test.TestPrefixMatch.test_rpc_distribution
[ SKIPPED ] header_matching_test.TestPrefixMatch.test_rpc_distribution
I0125 01:01:12.310173 125421742620672 base_testcase.py:60] ----- PSM Test Case SKIPPED: header_matching_test.TestPrefixMatch.test_rpc_distribution -----
Reason for skipping: the xDS config is good, but distribution is wrong.
I0125 01:01:12.310238 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestPresentMatch -----
I0125 01:01:12.310307 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:01:12.310394 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:01:12.310501 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0101-ryuh1
I0125 01:01:12.310784 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0101-ryuh1: server_target=xds:///header-matching.test-present-match:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:01:12.310904 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0101-ryuh1%22;timeRange=2025-01-25T01:01:12.310845Z%2F2025-01-25T01:31:12.310845Z?project=grpc-testing
I0125 01:01:12.311321 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0101-ryuh1
labels:
name: interop-psm-url-map-client-20250125-0101-ryuh1
owner: xds-k8s-interop-test
...

I0125 01:01:12.349069 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0101-ryuh1 created
I0125 01:01:12.351643 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0101-ryuh1
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-v3e5wozp
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-v3e5wozp
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-v3e5wozp
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///header-matching.test-present-match:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:01:12.397725 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:01:12.397909 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:01:13.455286 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-54b79d4f66-xq6tt']
I0125 01:01:13.455462 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-54b79d4f66-xq6tt to start
I0125 01:01:15.540535 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-54b79d4f66-xq6tt ready, IP: [{'ip': '10.60.0.52'}]
I0125 01:01:15.540796 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-54b79d4f66-xq6tt to url_map/test_app_logs/interop-psm-url-map-client-20250125-0101-ryuh1_psm-grpc-client-54b79d4f66-xq6tt.log
I0125 01:01:15.541165 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0101-ryuh1] Starting log collection thread 125421643368000 for psm-grpc-client-54b79d4f66-xq6tt
I0125 01:01:15.541481 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:01:19.622965 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] header_matching_test.TestPresentMatch.test_client_config
I0125 01:01:19.623544 125421742620672 client_app.py:294] [psm-grpc-client-54b79d4f66-xq6tt] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:01:20.414608 125421742620672 client_app.py:322] [psm-grpc-client-54b79d4f66-xq6tt] xDS control plane channel:
I0125 01:01:30.453228 125421742620672 client_app.py:322] [psm-grpc-client-54b79d4f66-xq6tt] xDS control plane channel:
I0125 01:01:32.462173 125421742620672 client_app.py:333] [psm-grpc-client-54b79d4f66-xq6tt] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:01:32.462446 125421742620672 client_app.py:304] [psm-grpc-client-54b79d4f66-xq6tt] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:01:32.498939 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:01:30.297599Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/header-matching.test-present-match:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766878880629391'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/header-matching.test-present-match:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_12_header-matching.test-present-match:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:01:28.039096Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:01:25.218076Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:01:30.196343Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766878880629391'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:01:30.196343Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766878880629391'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:01:30.313965Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_12_header-matching.test-present-match:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766878880629391'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_12_header-matching.test-present-match:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
headers:
- name: xds_md_numeric
presentMatch: true
prefix: /
name: URL_MAP/830293263384_interop-psm-url-map-url-map_12_header-matching.test-present-match:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_12_header-matching.test-present-match:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/d6bc118e-ce5f-4554-820b-0f7cfb16b9c9
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.52
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.52
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] header_matching_test.TestPresentMatch.test_client_config
I0125 01:01:32.499292 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: header_matching_test.TestPresentMatch.test_client_config -----

[ RUN ] header_matching_test.TestPresentMatch.test_rpc_distribution
I0125 01:01:32.499621 125421742620672 grpc.py:75] [psm-grpc-client-54b79d4f66-xq6tt:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL'], 'metadata': [{'type': 'UNARY_CALL', 'key': 'xds_md', 'value': 'unary_yranu'}, {'key': 'xds_md', 'value': 'empty_ytpme'}, {'type': 'UNARY_CALL', 'key': 'xds_md_numeric', 'value': '159'}]}), timeout=5, wait_for_ready=True)
I0125 01:01:34.510953 125421742620672 grpc.py:75] [psm-grpc-client-54b79d4f66-xq6tt:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:01:40.509481 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-54b79d4f66-xq6tt] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 150
rpcs_by_method:
UnaryCall:
psm-grpc-server-alternative-79bb77f689-55phr: 150

[ OK ] header_matching_test.TestPresentMatch.test_rpc_distribution
I0125 01:01:40.509843 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: header_matching_test.TestPresentMatch.test_rpc_distribution -----

I0125 01:01:40.509943 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestPresentMatch teardown -----
I0125 01:01:40.520817 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:01:50.586436 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:01:50.586695 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0101-ryuh1
I0125 01:02:20.684802 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0101-ryuh1 deleted
I0125 01:02:20.685091 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:02:20.685252 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-v3e5wozp:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0101-ryuh1%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-v3e5wozp%22;timeRange=2025-01-25T01:01:12.310841Z%2F2025-01-25T01:02:20.684951Z;cursorTimestamp=2025-01-25T01:01:19.623209Z?project=grpc-testing
I0125 01:02:20.685338 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestRangeMatch -----
I0125 01:02:20.685389 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:02:20.685472 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:02:20.685583 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0102-yfqhe
I0125 01:02:20.685873 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0102-yfqhe: server_target=xds:///header-matching.test-range-match:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:02:20.685995 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0102-yfqhe%22;timeRange=2025-01-25T01:02:20.685936Z%2F2025-01-25T01:32:20.685936Z?project=grpc-testing
I0125 01:02:20.686429 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0102-yfqhe
labels:
name: interop-psm-url-map-client-20250125-0102-yfqhe
owner: xds-k8s-interop-test
...

I0125 01:02:20.699980 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0102-yfqhe created
I0125 01:02:20.702776 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0102-yfqhe
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-y4hhbm25
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-y4hhbm25
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-y4hhbm25
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///header-matching.test-range-match:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:02:20.756088 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:02:20.756293 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:02:21.805528 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-84895cd444-svlz4']
I0125 01:02:21.805733 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-84895cd444-svlz4 to start
I0125 01:02:23.879672 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-84895cd444-svlz4 ready, IP: [{'ip': '10.60.0.53'}]
I0125 01:02:23.879930 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-84895cd444-svlz4 to url_map/test_app_logs/interop-psm-url-map-client-20250125-0102-yfqhe_psm-grpc-client-84895cd444-svlz4.log
I0125 01:02:23.880293 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0102-yfqhe] Starting log collection thread 125421643368000 for psm-grpc-client-84895cd444-svlz4
I0125 01:02:23.880614 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:02:27.954132 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] header_matching_test.TestRangeMatch.test_client_config
I0125 01:02:27.954571 125421742620672 client_app.py:294] [psm-grpc-client-84895cd444-svlz4] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:02:28.912306 125421742620672 client_app.py:322] [psm-grpc-client-84895cd444-svlz4] xDS control plane channel:
I0125 01:02:38.928557 125421742620672 client_app.py:322] [psm-grpc-client-84895cd444-svlz4] xDS control plane channel:
I0125 01:02:40.945641 125421742620672 client_app.py:333] [psm-grpc-client-84895cd444-svlz4] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:02:40.945895 125421742620672 client_app.py:304] [psm-grpc-client-84895cd444-svlz4] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:02:41.041215 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:02:31.910302Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/header-matching.test-range-match:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766935552520625'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/header-matching.test-range-match:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_14_header-matching.test-range-match:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:02:32.399917Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_14_header-matching.test-range-match:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766935552520625'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_14_header-matching.test-range-match:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
headers:
- name: xds_md_numeric
rangeMatch:
end: '200'
start: '100'
prefix: /
name: URL_MAP/830293263384_interop-psm-url-map-url-map_14_header-matching.test-range-match:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_14_header-matching.test-range-match:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:02:33.800920Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766935552520625'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:02:33.800920Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766935552520625'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:02:37.288881Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '4'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:02:37.132197Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '3'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/b344078f-dd44-4850-92ea-862c8765b86b
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.53
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.53
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] header_matching_test.TestRangeMatch.test_client_config
I0125 01:02:41.041611 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: header_matching_test.TestRangeMatch.test_client_config -----

[ RUN ] header_matching_test.TestRangeMatch.test_rpc_distribution
I0125 01:02:41.041991 125421742620672 grpc.py:75] [psm-grpc-client-84895cd444-svlz4:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL', 'EMPTY_CALL'], 'metadata': [{'type': 'UNARY_CALL', 'key': 'xds_md', 'value': 'unary_yranu'}, {'key': 'xds_md', 'value': 'empty_ytpme'}, {'type': 'UNARY_CALL', 'key': 'xds_md_numeric', 'value': '159'}]}), timeout=5, wait_for_ready=True)
I0125 01:02:43.105123 125421742620672 grpc.py:75] [psm-grpc-client-84895cd444-svlz4:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:02:46.116559 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-84895cd444-svlz4] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 75
psm-grpc-server-7c7cf47f74-l26pq: 75
rpcs_by_method:
EmptyCall:
psm-grpc-server-7c7cf47f74-l26pq: 75
UnaryCall:
psm-grpc-server-alternative-79bb77f689-55phr: 75

[ OK ] header_matching_test.TestRangeMatch.test_rpc_distribution
I0125 01:02:46.116912 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: header_matching_test.TestRangeMatch.test_rpc_distribution -----

I0125 01:02:46.117006 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestRangeMatch teardown -----
I0125 01:02:46.179962 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:02:56.265314 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:02:56.265550 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0102-yfqhe
I0125 01:03:26.360674 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0102-yfqhe deleted
I0125 01:03:26.361013 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:03:26.361177 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-y4hhbm25:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0102-yfqhe%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-y4hhbm25%22;timeRange=2025-01-25T01:02:20.685932Z%2F2025-01-25T01:03:26.360866Z;cursorTimestamp=2025-01-25T01:02:27.954324Z?project=grpc-testing
I0125 01:03:26.361267 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestRegexMatch -----
I0125 01:03:26.361324 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:03:26.361413 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:03:26.361533 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0103-j2kbf
I0125 01:03:26.361805 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0103-j2kbf: server_target=xds:///header-matching.test-regex-match:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:03:26.361931 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0103-j2kbf%22;timeRange=2025-01-25T01:03:26.361870Z%2F2025-01-25T01:33:26.361870Z?project=grpc-testing
I0125 01:03:26.362422 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0103-j2kbf
labels:
name: interop-psm-url-map-client-20250125-0103-j2kbf
owner: xds-k8s-interop-test
...

I0125 01:03:26.393986 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0103-j2kbf created
I0125 01:03:26.396581 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0103-j2kbf
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-yvosw498
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-yvosw498
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-yvosw498
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///header-matching.test-regex-match:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:03:26.454325 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:03:26.454495 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:03:27.510424 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-6578bdfccb-q2rw4']
I0125 01:03:27.510620 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-6578bdfccb-q2rw4 to start
I0125 01:03:29.579564 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-6578bdfccb-q2rw4 ready, IP: [{'ip': '10.60.0.54'}]
I0125 01:03:29.579801 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-6578bdfccb-q2rw4 to url_map/test_app_logs/interop-psm-url-map-client-20250125-0103-j2kbf_psm-grpc-client-6578bdfccb-q2rw4.log
I0125 01:03:29.580151 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0103-j2kbf] Starting log collection thread 125421643368000 for psm-grpc-client-6578bdfccb-q2rw4
I0125 01:03:29.580391 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:03:33.652837 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] header_matching_test.TestRegexMatch.test_client_config
I0125 01:03:33.653277 125421742620672 client_app.py:294] [psm-grpc-client-6578bdfccb-q2rw4] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:03:34.927304 125421742620672 client_app.py:322] [psm-grpc-client-6578bdfccb-q2rw4] xDS control plane channel:
I0125 01:03:44.943683 125421742620672 client_app.py:322] [psm-grpc-client-6578bdfccb-q2rw4] xDS control plane channel:
I0125 01:03:46.953102 125421742620672 client_app.py:333] [psm-grpc-client-6578bdfccb-q2rw4] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:03:46.953344 125421742620672 client_app.py:304] [psm-grpc-client-6578bdfccb-q2rw4] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:03:46.990944 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:03:37.742484Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/header-matching.test-regex-match:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737766974175365980'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/header-matching.test-regex-match:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_15_header-matching.test-regex-match:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:03:38.219170Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_15_header-matching.test-regex-match:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737766974175365980'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_15_header-matching.test-regex-match:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
headers:
- name: xds_md
safeRegexMatch:
googleRe2: {}
regex: ^em.*me$
prefix: /
name: URL_MAP/830293263384_interop-psm-url-map-url-map_15_header-matching.test-regex-match:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_15_header-matching.test-regex-match:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:03:39.502434Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766974175365980'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:03:39.502434Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737766974175365980'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:03:41.588792Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:03:39.626538Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/dc751b43-5201-46c4-88e6-d3b4ce3e665e
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.54
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.54
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] header_matching_test.TestRegexMatch.test_client_config
I0125 01:03:46.991293 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: header_matching_test.TestRegexMatch.test_client_config -----

[ RUN ] header_matching_test.TestRegexMatch.test_rpc_distribution
I0125 01:03:46.991611 125421742620672 grpc.py:75] [psm-grpc-client-6578bdfccb-q2rw4:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['EMPTY_CALL'], 'metadata': [{'type': 'UNARY_CALL', 'key': 'xds_md', 'value': 'unary_yranu'}, {'key': 'xds_md', 'value': 'empty_ytpme'}, {'type': 'UNARY_CALL', 'key': 'xds_md_numeric', 'value': '159'}]}), timeout=5, wait_for_ready=True)
I0125 01:03:49.002051 125421742620672 grpc.py:75] [psm-grpc-client-6578bdfccb-q2rw4:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:03:55.019925 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-6578bdfccb-q2rw4] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 150
rpcs_by_method:
EmptyCall:
psm-grpc-server-alternative-79bb77f689-55phr: 150

[ OK ] header_matching_test.TestRegexMatch.test_rpc_distribution
I0125 01:03:55.020326 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: header_matching_test.TestRegexMatch.test_rpc_distribution -----

I0125 01:03:55.020474 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestRegexMatch teardown -----
I0125 01:03:55.032730 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:04:05.103904 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:04:05.104126 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0103-j2kbf
I0125 01:04:35.202260 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0103-j2kbf deleted
I0125 01:04:35.202582 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:04:35.202753 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-yvosw498:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0103-j2kbf%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-yvosw498%22;timeRange=2025-01-25T01:03:26.361866Z%2F2025-01-25T01:04:35.202420Z;cursorTimestamp=2025-01-25T01:03:33.653012Z?project=grpc-testing
I0125 01:04:35.202842 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestSuffixMatch -----
I0125 01:04:35.202886 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:04:35.202970 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:04:35.203077 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0104-b7gok
I0125 01:04:35.203341 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0104-b7gok: server_target=xds:///header-matching.test-suffix-match:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:04:35.203473 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0104-b7gok%22;timeRange=2025-01-25T01:04:35.203405Z%2F2025-01-25T01:34:35.203405Z?project=grpc-testing
I0125 01:04:35.203931 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0104-b7gok
labels:
name: interop-psm-url-map-client-20250125-0104-b7gok
owner: xds-k8s-interop-test
...

I0125 01:04:35.216758 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0104-b7gok created
I0125 01:04:35.219443 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0104-b7gok
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-pixs1c4y
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-pixs1c4y
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-pixs1c4y
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///header-matching.test-suffix-match:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:04:35.271759 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:04:35.271931 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:04:36.322427 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-76d4fbbf68-4spbz']
I0125 01:04:36.322596 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-76d4fbbf68-4spbz to start
I0125 01:04:38.391846 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-76d4fbbf68-4spbz ready, IP: [{'ip': '10.60.0.55'}]
I0125 01:04:38.392082 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-76d4fbbf68-4spbz to url_map/test_app_logs/interop-psm-url-map-client-20250125-0104-b7gok_psm-grpc-client-76d4fbbf68-4spbz.log
I0125 01:04:38.392436 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0104-b7gok] Starting log collection thread 125421643368000 for psm-grpc-client-76d4fbbf68-4spbz
I0125 01:04:38.392671 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:04:42.475054 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] header_matching_test.TestSuffixMatch.test_client_config
I0125 01:04:42.475543 125421742620672 client_app.py:294] [psm-grpc-client-76d4fbbf68-4spbz] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:04:43.409573 125421742620672 client_app.py:322] [psm-grpc-client-76d4fbbf68-4spbz] xDS control plane channel:
I0125 01:04:53.422374 125421742620672 client_app.py:322] [psm-grpc-client-76d4fbbf68-4spbz] xDS control plane channel:
I0125 01:04:55.433420 125421742620672 client_app.py:333] [psm-grpc-client-76d4fbbf68-4spbz] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:04:55.433670 125421742620672 client_app.py:304] [psm-grpc-client-76d4fbbf68-4spbz] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:04:55.482481 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:04:45.997938Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/header-matching.test-suffix-match:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767056151967112'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/header-matching.test-suffix-match:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_11_header-matching.test-suffix-match:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:04:46.497428Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_11_header-matching.test-suffix-match:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767056151967112'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_11_header-matching.test-suffix-match:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
headers:
- name: xds_md
suffixMatch: me
prefix: /
name: URL_MAP/830293263384_interop-psm-url-map-url-map_11_header-matching.test-suffix-match:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_11_header-matching.test-suffix-match:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:04:47.836320Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767056151967112'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:04:47.836320Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767056151967112'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:04:51.087251Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:04:48.285732Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/83d5971f-9c47-435e-b52b-e8c468811b72
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.55
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.55
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] header_matching_test.TestSuffixMatch.test_client_config
I0125 01:04:55.482895 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: header_matching_test.TestSuffixMatch.test_client_config -----

[ RUN ] header_matching_test.TestSuffixMatch.test_rpc_distribution
I0125 01:04:55.483326 125421742620672 grpc.py:75] [psm-grpc-client-76d4fbbf68-4spbz:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['EMPTY_CALL'], 'metadata': [{'type': 'UNARY_CALL', 'key': 'xds_md', 'value': 'unary_yranu'}, {'key': 'xds_md', 'value': 'empty_ytpme'}, {'type': 'UNARY_CALL', 'key': 'xds_md_numeric', 'value': '159'}]}), timeout=5, wait_for_ready=True)
I0125 01:04:57.494785 125421742620672 grpc.py:75] [psm-grpc-client-76d4fbbf68-4spbz:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:05:03.491338 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-76d4fbbf68-4spbz] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 150
rpcs_by_method:
EmptyCall:
psm-grpc-server-alternative-79bb77f689-55phr: 150

[ OK ] header_matching_test.TestSuffixMatch.test_rpc_distribution
I0125 01:05:03.491811 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: header_matching_test.TestSuffixMatch.test_rpc_distribution -----

I0125 01:05:03.491981 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestSuffixMatch teardown -----
I0125 01:05:03.550418 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:05:13.640391 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:05:13.640657 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0104-b7gok
I0125 01:05:43.732928 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0104-b7gok deleted
I0125 01:05:43.733268 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:05:43.733442 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-pixs1c4y:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0104-b7gok%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-pixs1c4y%22;timeRange=2025-01-25T01:04:35.203402Z%2F2025-01-25T01:05:43.733098Z;cursorTimestamp=2025-01-25T01:04:42.475251Z?project=grpc-testing
I0125 01:05:43.733558 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestMetadataFilterMatchAll -----
I0125 01:05:43.733622 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:05:43.733750 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:05:43.733894 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0105-lhb8e
I0125 01:05:43.734201 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0105-lhb8e: server_target=xds:///metadata-filter.test-metadata-filter-match-all:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:05:43.734353 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0105-lhb8e%22;timeRange=2025-01-25T01:05:43.734280Z%2F2025-01-25T01:35:43.734280Z?project=grpc-testing
I0125 01:05:43.734820 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0105-lhb8e
labels:
name: interop-psm-url-map-client-20250125-0105-lhb8e
owner: xds-k8s-interop-test
...

I0125 01:05:43.766592 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0105-lhb8e created
I0125 01:05:43.769286 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0105-lhb8e
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-2qqm4jvs
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-2qqm4jvs
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-2qqm4jvs
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///metadata-filter.test-metadata-filter-match-all:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:05:43.804545 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:05:43.804747 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:05:44.863502 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-7ccfdcf4f-xkjl9']
I0125 01:05:44.863722 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-7ccfdcf4f-xkjl9 to start
I0125 01:05:46.926684 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-7ccfdcf4f-xkjl9 ready, IP: [{'ip': '10.60.0.56'}]
I0125 01:05:46.926946 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-7ccfdcf4f-xkjl9 to url_map/test_app_logs/interop-psm-url-map-client-20250125-0105-lhb8e_psm-grpc-client-7ccfdcf4f-xkjl9.log
I0125 01:05:46.927342 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0105-lhb8e] Starting log collection thread 125421643368000 for psm-grpc-client-7ccfdcf4f-xkjl9
I0125 01:05:46.927523 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:05:51.004581 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] metadata_filter_test.TestMetadataFilterMatchAll.test_client_config
I0125 01:05:51.005149 125421742620672 client_app.py:294] [psm-grpc-client-7ccfdcf4f-xkjl9] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:05:51.893106 125421742620672 client_app.py:322] [psm-grpc-client-7ccfdcf4f-xkjl9] xDS control plane channel:
I0125 01:06:01.913008 125421742620672 client_app.py:322] [psm-grpc-client-7ccfdcf4f-xkjl9] xDS control plane channel:
I0125 01:06:03.922647 125421742620672 client_app.py:333] [psm-grpc-client-7ccfdcf4f-xkjl9] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:06:03.922948 125421742620672 client_app.py:304] [psm-grpc-client-7ccfdcf4f-xkjl9] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:06:03.976446 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:05:55.802485Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_16_metadata-filter.test-metadata-filter-match-all:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767139486504349'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_16_metadata-filter.test-metadata-filter-match-all:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
headers:
- exactMatch: empty_ytpme
name: xds_md
prefix: /grpc.testing.TestService/Empty
metadata: {}
name: URL_MAP/830293263384_interop-psm-url-map-url-map_16_metadata-filter.test-metadata-filter-match-all:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_16_metadata-filter.test-metadata-filter-match-all:8848-route-2
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:05:55.525369Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/metadata-filter.test-metadata-filter-match-all:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767139486504349'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/metadata-filter.test-metadata-filter-match-all:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_16_metadata-filter.test-metadata-filter-match-all:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:05:56.744293Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767139486504349'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:05:56.744293Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767139486504349'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:05:59.397263Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:05:56.908594Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/b420c06c-7df0-40a2-9652-2f808e68a31c
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.56
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.56
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] metadata_filter_test.TestMetadataFilterMatchAll.test_client_config
I0125 01:06:03.976930 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: metadata_filter_test.TestMetadataFilterMatchAll.test_client_config -----

[ RUN ] metadata_filter_test.TestMetadataFilterMatchAll.test_rpc_distribution
I0125 01:06:03.977370 125421742620672 grpc.py:75] [psm-grpc-client-7ccfdcf4f-xkjl9:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['EMPTY_CALL'], 'metadata': [{'key': 'xds_md', 'value': 'empty_ytpme'}]}), timeout=5, wait_for_ready=True)
I0125 01:06:06.007332 125421742620672 grpc.py:75] [psm-grpc-client-7ccfdcf4f-xkjl9:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:06:12.017018 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-7ccfdcf4f-xkjl9] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 150
rpcs_by_method:
EmptyCall:
psm-grpc-server-alternative-79bb77f689-55phr: 150

[ OK ] metadata_filter_test.TestMetadataFilterMatchAll.test_rpc_distribution
I0125 01:06:12.017439 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: metadata_filter_test.TestMetadataFilterMatchAll.test_rpc_distribution -----

I0125 01:06:12.017568 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestMetadataFilterMatchAll teardown -----
I0125 01:06:12.029452 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:06:22.098451 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:06:22.098748 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0105-lhb8e
I0125 01:06:52.193790 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0105-lhb8e deleted
I0125 01:06:52.194148 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:06:52.194348 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-2qqm4jvs:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0105-lhb8e%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-2qqm4jvs%22;timeRange=2025-01-25T01:05:43.734275Z%2F2025-01-25T01:06:52.193976Z;cursorTimestamp=2025-01-25T01:05:51.004818Z?project=grpc-testing
I0125 01:06:52.194456 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestMetadataFilterMatchAny -----
I0125 01:06:52.194529 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:06:52.194646 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:06:52.194802 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0106-a3omt
I0125 01:06:52.195128 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0106-a3omt: server_target=xds:///metadata-filter.test-metadata-filter-match-any:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:06:52.195285 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0106-a3omt%22;timeRange=2025-01-25T01:06:52.195201Z%2F2025-01-25T01:36:52.195201Z?project=grpc-testing
I0125 01:06:52.195780 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0106-a3omt
labels:
name: interop-psm-url-map-client-20250125-0106-a3omt
owner: xds-k8s-interop-test
...

I0125 01:06:52.207921 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0106-a3omt created
I0125 01:06:52.212445 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0106-a3omt
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-81jvjwl6
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-81jvjwl6
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-81jvjwl6
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///metadata-filter.test-metadata-filter-match-any:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:06:52.257670 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:06:52.257917 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:06:53.312587 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-5b457d999b-fxfwb']
I0125 01:06:53.312930 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-5b457d999b-fxfwb to start
I0125 01:06:55.380605 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-5b457d999b-fxfwb ready, IP: [{'ip': '10.60.0.57'}]
I0125 01:06:55.380901 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-5b457d999b-fxfwb to url_map/test_app_logs/interop-psm-url-map-client-20250125-0106-a3omt_psm-grpc-client-5b457d999b-fxfwb.log
I0125 01:06:55.381202 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0106-a3omt] Starting log collection thread 125421643368000 for psm-grpc-client-5b457d999b-fxfwb
I0125 01:06:55.381391 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:06:59.469869 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] metadata_filter_test.TestMetadataFilterMatchAny.test_client_config
I0125 01:06:59.470358 125421742620672 client_app.py:294] [psm-grpc-client-5b457d999b-fxfwb] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:07:00.300673 125421742620672 client_app.py:322] [psm-grpc-client-5b457d999b-fxfwb] xDS control plane channel:
I0125 01:07:10.317045 125421742620672 client_app.py:322] [psm-grpc-client-5b457d999b-fxfwb] xDS control plane channel:
I0125 01:07:12.327385 125421742620672 client_app.py:333] [psm-grpc-client-5b457d999b-fxfwb] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:07:12.327750 125421742620672 client_app.py:304] [psm-grpc-client-5b457d999b-fxfwb] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:07:12.374238 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:07:03.901783Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_17_metadata-filter.test-metadata-filter-match-any:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767201013723028'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_17_metadata-filter.test-metadata-filter-match-any:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
prefix: /grpc.testing.TestService/Unary
metadata: {}
name: URL_MAP/830293263384_interop-psm-url-map-url-map_17_metadata-filter.test-metadata-filter-match-any:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_17_metadata-filter.test-metadata-filter-match-any:8848-route-2
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:07:05.397345Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767201013723028'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:07:05.397345Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767201013723028'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:07:03.697522Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/metadata-filter.test-metadata-filter-match-any:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767201013723028'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/metadata-filter.test-metadata-filter-match-any:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_17_metadata-filter.test-metadata-filter-match-any:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:07:07.400617Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:07:05.611395Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/bad646ba-e14b-416c-8506-a78dc71f6e91
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.57
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.57
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] metadata_filter_test.TestMetadataFilterMatchAny.test_client_config
I0125 01:07:12.374776 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: metadata_filter_test.TestMetadataFilterMatchAny.test_client_config -----

[ RUN ] metadata_filter_test.TestMetadataFilterMatchAny.test_rpc_distribution
I0125 01:07:12.375216 125421742620672 grpc.py:75] [psm-grpc-client-5b457d999b-fxfwb:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL']}), timeout=5, wait_for_ready=True)
I0125 01:07:14.402666 125421742620672 grpc.py:75] [psm-grpc-client-5b457d999b-fxfwb:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:07:20.403105 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-5b457d999b-fxfwb] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 150
rpcs_by_method:
UnaryCall:
psm-grpc-server-alternative-79bb77f689-55phr: 150

[ OK ] metadata_filter_test.TestMetadataFilterMatchAny.test_rpc_distribution
I0125 01:07:20.403559 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: metadata_filter_test.TestMetadataFilterMatchAny.test_rpc_distribution -----

I0125 01:07:20.403746 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestMetadataFilterMatchAny teardown -----
I0125 01:07:20.462226 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:07:30.549619 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:07:30.549901 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0106-a3omt
I0125 01:08:00.643247 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0106-a3omt deleted
I0125 01:08:00.643584 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:08:00.643778 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-81jvjwl6:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0106-a3omt%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-81jvjwl6%22;timeRange=2025-01-25T01:06:52.195196Z%2F2025-01-25T01:08:00.643425Z;cursorTimestamp=2025-01-25T01:06:59.470053Z?project=grpc-testing
I0125 01:08:00.643875 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestMetadataFilterMatchAnyAndAll -----
I0125 01:08:00.643922 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:08:00.644006 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:08:00.644115 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0108-e7n2q
I0125 01:08:00.644410 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0108-e7n2q: server_target=xds:///metadata-filter.test-metadata-filter-match-any-and-all:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:08:00.644544 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0108-e7n2q%22;timeRange=2025-01-25T01:08:00.644481Z%2F2025-01-25T01:38:00.644481Z?project=grpc-testing
I0125 01:08:00.645042 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0108-e7n2q
labels:
name: interop-psm-url-map-client-20250125-0108-e7n2q
owner: xds-k8s-interop-test
...

I0125 01:08:00.687112 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0108-e7n2q created
I0125 01:08:00.689811 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0108-e7n2q
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-7cnegasw
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-7cnegasw
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-7cnegasw
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///metadata-filter.test-metadata-filter-match-any-and-all:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:08:00.743383 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:08:00.743599 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:08:01.789634 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-74445d4c77-kj55d']
I0125 01:08:01.789847 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-74445d4c77-kj55d to start
I0125 01:08:03.854856 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-74445d4c77-kj55d ready, IP: [{'ip': '10.60.0.58'}]
I0125 01:08:03.855110 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-74445d4c77-kj55d to url_map/test_app_logs/interop-psm-url-map-client-20250125-0108-e7n2q_psm-grpc-client-74445d4c77-kj55d.log
I0125 01:08:03.855519 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0108-e7n2q] Starting log collection thread 125421643368000 for psm-grpc-client-74445d4c77-kj55d
I0125 01:08:03.855890 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:08:07.932518 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] metadata_filter_test.TestMetadataFilterMatchAnyAndAll.test_client_config
I0125 01:08:07.933037 125421742620672 client_app.py:294] [psm-grpc-client-74445d4c77-kj55d] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:08:08.807254 125421742620672 client_app.py:322] [psm-grpc-client-74445d4c77-kj55d] xDS control plane channel:
I0125 01:08:10.822518 125421742620672 client_app.py:333] [psm-grpc-client-74445d4c77-kj55d] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:08:10.822857 125421742620672 client_app.py:304] [psm-grpc-client-74445d4c77-kj55d] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:08:11.126551 125421742620672 retryers.py:213] Retrying framework.xds_url_map_testcase.XdsUrlMapTestCase._fetch_and_check_xds_config in 15.0 seconds as it raised AssertionError: [] has length of 0, expected 2. : insufficient endpoints in EDS: want=2 seen=[]
I0125 01:08:26.170351 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:08:17.426016Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/metadata-filter.test-metadata-filter-match-any-and-all:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767284881455863'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/metadata-filter.test-metadata-filter-match-any-and-all:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_18_metadata-filter.test-metadata-filter-match-any-and-all:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:08:22.957184Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '3'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:08:22.957184Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '3'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:08:17.398702Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767284881455863'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:08:17.398702Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767284881455863'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:08:17.493794Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_18_metadata-filter.test-metadata-filter-match-any-and-all:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767284881455863'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_18_metadata-filter.test-metadata-filter-match-any-and-all:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
prefix: /grpc.testing.TestService/Unary
metadata: {}
name: URL_MAP/830293263384_interop-psm-url-map-url-map_18_metadata-filter.test-metadata-filter-match-any-and-all:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_18_metadata-filter.test-metadata-filter-match-any-and-all:8848-route-2
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/e9cdd354-e912-4924-9a1d-96b9ef5321bc
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.58
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.58
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] metadata_filter_test.TestMetadataFilterMatchAnyAndAll.test_client_config
I0125 01:08:26.170754 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: metadata_filter_test.TestMetadataFilterMatchAnyAndAll.test_client_config -----

[ RUN ] metadata_filter_test.TestMetadataFilterMatchAnyAndAll.test_rpc_distribution
I0125 01:08:26.171052 125421742620672 grpc.py:75] [psm-grpc-client-74445d4c77-kj55d:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL']}), timeout=5, wait_for_ready=True)
I0125 01:08:28.180167 125421742620672 grpc.py:75] [psm-grpc-client-74445d4c77-kj55d:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:08:34.173097 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-74445d4c77-kj55d] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 150
rpcs_by_method:
UnaryCall:
psm-grpc-server-alternative-79bb77f689-55phr: 150

[ OK ] metadata_filter_test.TestMetadataFilterMatchAnyAndAll.test_rpc_distribution
I0125 01:08:34.173505 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: metadata_filter_test.TestMetadataFilterMatchAnyAndAll.test_rpc_distribution -----

I0125 01:08:34.173649 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestMetadataFilterMatchAnyAndAll teardown -----
I0125 01:08:34.184397 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:08:44.248836 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:08:44.249077 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0108-e7n2q
I0125 01:09:14.339064 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0108-e7n2q deleted
I0125 01:09:14.339406 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:09:14.339572 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-7cnegasw:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0108-e7n2q%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-7cnegasw%22;timeRange=2025-01-25T01:08:00.644477Z%2F2025-01-25T01:09:14.339234Z;cursorTimestamp=2025-01-25T01:08:07.932750Z?project=grpc-testing
I0125 01:09:14.339660 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestMetadataFilterMatchMultipleRules -----
I0125 01:09:14.339724 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:09:14.339814 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:09:14.339923 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0109-yertl
I0125 01:09:14.340208 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0109-yertl: server_target=xds:///metadata-filter.test-metadata-filter-match-multiple-rules:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:09:14.340346 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0109-yertl%22;timeRange=2025-01-25T01:09:14.340282Z%2F2025-01-25T01:39:14.340282Z?project=grpc-testing
I0125 01:09:14.340830 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0109-yertl
labels:
name: interop-psm-url-map-client-20250125-0109-yertl
owner: xds-k8s-interop-test
...

I0125 01:09:14.351916 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0109-yertl created
I0125 01:09:14.354618 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0109-yertl
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-4m7cq1qz
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-4m7cq1qz
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-4m7cq1qz
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///metadata-filter.test-metadata-filter-match-multiple-rules:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:09:14.393513 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:09:14.393678 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:09:15.464599 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-7fdbb5fdd4-bdjbr']
I0125 01:09:15.464798 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-7fdbb5fdd4-bdjbr to start
I0125 01:09:17.531475 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-7fdbb5fdd4-bdjbr ready, IP: [{'ip': '10.60.0.59'}]
I0125 01:09:17.531729 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-7fdbb5fdd4-bdjbr to url_map/test_app_logs/interop-psm-url-map-client-20250125-0109-yertl_psm-grpc-client-7fdbb5fdd4-bdjbr.log
I0125 01:09:17.531981 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0109-yertl] Starting log collection thread 125421643368000 for psm-grpc-client-7fdbb5fdd4-bdjbr
I0125 01:09:17.532173 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:09:21.606323 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] metadata_filter_test.TestMetadataFilterMatchMultipleRules.test_client_config
I0125 01:09:21.606796 125421742620672 client_app.py:294] [psm-grpc-client-7fdbb5fdd4-bdjbr] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:09:22.429585 125421742620672 client_app.py:322] [psm-grpc-client-7fdbb5fdd4-bdjbr] xDS control plane channel:
I0125 01:09:32.449512 125421742620672 client_app.py:322] [psm-grpc-client-7fdbb5fdd4-bdjbr] xDS control plane channel:
I0125 01:09:34.457866 125421742620672 client_app.py:333] [psm-grpc-client-7fdbb5fdd4-bdjbr] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:09:34.458100 125421742620672 client_app.py:304] [psm-grpc-client-7fdbb5fdd4-bdjbr] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:09:34.509212 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:09:26.699928Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_19_metadata-filter.test-metadata-filter-match-multiple-rules:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767350424129894'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_19_metadata-filter.test-metadata-filter-match-multiple-rules:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
headers:
- exactMatch: empty_ytpme
name: xds_md
prefix: /
metadata:
filterMetadata:
com.googleapis.trafficdirector.internal_route_config:
metadata_filter:
- filter_data:
- name: TRAFFICDIRECTOR_NETWORK_NAME
value: default-vpc
match_type: ANY
name: URL_MAP/830293263384_interop-psm-url-map-url-map_19_metadata-filter.test-metadata-filter-match-multiple-rules:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: /grpc.testing.TestService/Unary
metadata:
filterMetadata:
com.googleapis.trafficdirector.internal_route_config:
metadata_filter:
- filter_data:
- name: TRAFFICDIRECTOR_NETWORK_NAME
value: default-vpc
match_type: ALL
name: URL_MAP/830293263384_interop-psm-url-map-url-map_19_metadata-filter.test-metadata-filter-match-multiple-rules:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_19_metadata-filter.test-metadata-filter-match-multiple-rules:8848-route-2
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:09:26.632606Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/metadata-filter.test-metadata-filter-match-multiple-rules:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767350424129894'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/metadata-filter.test-metadata-filter-match-multiple-rules:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_19_metadata-filter.test-metadata-filter-match-multiple-rules:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:09:27.238524Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767350424129894'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:09:27.238524Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767350424129894'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:09:30.392381Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:09:27.422370Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/73e312bf-4b89-4248-9f83-c03f0c98cf6c
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.59
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.59
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] metadata_filter_test.TestMetadataFilterMatchMultipleRules.test_client_config
I0125 01:09:34.509587 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: metadata_filter_test.TestMetadataFilterMatchMultipleRules.test_client_config -----

[ RUN ] metadata_filter_test.TestMetadataFilterMatchMultipleRules.test_rpc_distribution
I0125 01:09:34.509898 125421742620672 grpc.py:75] [psm-grpc-client-7fdbb5fdd4-bdjbr:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['EMPTY_CALL'], 'metadata': [{'key': 'xds_md', 'value': 'empty_ytpme'}]}), timeout=5, wait_for_ready=True)
I0125 01:09:36.523105 125421742620672 grpc.py:75] [psm-grpc-client-7fdbb5fdd4-bdjbr:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:09:42.523234 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-7fdbb5fdd4-bdjbr] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 150
rpcs_by_method:
EmptyCall:
psm-grpc-server-alternative-79bb77f689-55phr: 150

[ OK ] metadata_filter_test.TestMetadataFilterMatchMultipleRules.test_rpc_distribution
I0125 01:09:42.523620 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: metadata_filter_test.TestMetadataFilterMatchMultipleRules.test_rpc_distribution -----

I0125 01:09:42.523783 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestMetadataFilterMatchMultipleRules teardown -----
I0125 01:09:42.584427 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:09:52.659668 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:09:52.659929 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0109-yertl
I0125 01:10:22.727037 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0109-yertl deleted
I0125 01:10:22.727370 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:10:22.727566 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-4m7cq1qz:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0109-yertl%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-4m7cq1qz%22;timeRange=2025-01-25T01:09:14.340278Z%2F2025-01-25T01:10:22.727202Z;cursorTimestamp=2025-01-25T01:09:21.606509Z?project=grpc-testing
I0125 01:10:22.727694 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestCaseInsensitiveMatch -----
I0125 01:10:22.727775 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:10:22.727894 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:10:22.728029 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0110-1sdut
I0125 01:10:22.728356 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0110-1sdut: server_target=xds:///path-matching.test-case-insensitive-match:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:10:22.728513 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0110-1sdut%22;timeRange=2025-01-25T01:10:22.728429Z%2F2025-01-25T01:40:22.728429Z?project=grpc-testing
I0125 01:10:22.729011 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0110-1sdut
labels:
name: interop-psm-url-map-client-20250125-0110-1sdut
owner: xds-k8s-interop-test
...

I0125 01:10:22.766591 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0110-1sdut created
I0125 01:10:22.769304 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0110-1sdut
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-e392ik0d
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-e392ik0d
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-e392ik0d
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///path-matching.test-case-insensitive-match:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:10:22.807929 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:10:22.808109 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:10:23.857357 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-7d94f7b44f-jjhhv']
I0125 01:10:23.857553 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-7d94f7b44f-jjhhv to start
I0125 01:10:25.923285 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-7d94f7b44f-jjhhv ready, IP: [{'ip': '10.60.0.60'}]
I0125 01:10:25.923531 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-7d94f7b44f-jjhhv to url_map/test_app_logs/interop-psm-url-map-client-20250125-0110-1sdut_psm-grpc-client-7d94f7b44f-jjhhv.log
I0125 01:10:25.923932 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0110-1sdut] Starting log collection thread 125421643368000 for psm-grpc-client-7d94f7b44f-jjhhv
I0125 01:10:25.924206 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:10:30.107197 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] path_matching_test.TestCaseInsensitiveMatch.test_client_config
I0125 01:10:30.107770 125421742620672 client_app.py:294] [psm-grpc-client-7d94f7b44f-jjhhv] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:10:31.130906 125421742620672 client_app.py:322] [psm-grpc-client-7d94f7b44f-jjhhv] xDS control plane channel:
I0125 01:10:41.189800 125421742620672 client_app.py:322] [psm-grpc-client-7d94f7b44f-jjhhv] xDS control plane channel:
I0125 01:10:43.200144 125421742620672 client_app.py:333] [psm-grpc-client-7d94f7b44f-jjhhv] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:10:43.200420 125421742620672 client_app.py:304] [psm-grpc-client-7d94f7b44f-jjhhv] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:10:43.250751 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:10:34.148384Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/path-matching.test-case-insensitive-match:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767392043754889'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/path-matching.test-case-insensitive-match:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_24_path-matching.test-case-insensitive-match:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:10:36.710569Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:10:35.751107Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:10:35.691536Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767392043754889'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:10:35.691536Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767392043754889'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:10:34.509376Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_24_path-matching.test-case-insensitive-match:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767392043754889'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_24_path-matching.test-case-insensitive-match:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
caseSensitive: false
path: /gRpC.tEsTinG.tEstseRvice/empTycaLl
name: URL_MAP/830293263384_interop-psm-url-map-url-map_24_path-matching.test-case-insensitive-match:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_24_path-matching.test-case-insensitive-match:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/e54907bf-9420-4ce5-ad0b-2c1389ac98ca
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.60
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.60
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] path_matching_test.TestCaseInsensitiveMatch.test_client_config
I0125 01:10:43.251240 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: path_matching_test.TestCaseInsensitiveMatch.test_client_config -----

[ RUN ] path_matching_test.TestCaseInsensitiveMatch.test_rpc_distribution
I0125 01:10:43.251643 125421742620672 grpc.py:75] [psm-grpc-client-7d94f7b44f-jjhhv:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['EMPTY_CALL']}), timeout=5, wait_for_ready=True)
I0125 01:10:45.310532 125421742620672 grpc.py:75] [psm-grpc-client-7d94f7b44f-jjhhv:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:10:51.312728 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-7d94f7b44f-jjhhv] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 150
rpcs_by_method:
EmptyCall:
psm-grpc-server-alternative-79bb77f689-55phr: 150

[ OK ] path_matching_test.TestCaseInsensitiveMatch.test_rpc_distribution
I0125 01:10:51.313153 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: path_matching_test.TestCaseInsensitiveMatch.test_rpc_distribution -----

I0125 01:10:51.313329 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestCaseInsensitiveMatch teardown -----
I0125 01:10:51.323738 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:11:01.389092 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:11:01.389383 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0110-1sdut
I0125 01:11:31.474271 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0110-1sdut deleted
I0125 01:11:31.474651 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:11:31.474899 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-e392ik0d:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0110-1sdut%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-e392ik0d%22;timeRange=2025-01-25T01:10:22.728423Z%2F2025-01-25T01:11:31.474450Z;cursorTimestamp=2025-01-25T01:10:30.107435Z?project=grpc-testing
I0125 01:11:31.475038 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestFullPathMatchEmptyCall -----
I0125 01:11:31.475112 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:11:31.475248 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:11:31.475388 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0111-txxvf
I0125 01:11:31.475760 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0111-txxvf: server_target=xds:///path-matching.test-full-path-match-empty-call:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:11:31.475927 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0111-txxvf%22;timeRange=2025-01-25T01:11:31.475840Z%2F2025-01-25T01:41:31.475840Z?project=grpc-testing
I0125 01:11:31.476419 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0111-txxvf
labels:
name: interop-psm-url-map-client-20250125-0111-txxvf
owner: xds-k8s-interop-test
...

I0125 01:11:31.487509 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0111-txxvf created
I0125 01:11:31.490186 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0111-txxvf
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-383lve3l
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-383lve3l
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-383lve3l
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///path-matching.test-full-path-match-empty-call:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:11:31.538187 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:11:31.538389 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:11:32.581257 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-b5cc8898d-bbqhq']
I0125 01:11:32.581440 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-b5cc8898d-bbqhq to start
I0125 01:11:35.665083 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-b5cc8898d-bbqhq ready, IP: [{'ip': '10.60.0.61'}]
I0125 01:11:35.665339 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-b5cc8898d-bbqhq to url_map/test_app_logs/interop-psm-url-map-client-20250125-0111-txxvf_psm-grpc-client-b5cc8898d-bbqhq.log
I0125 01:11:35.665744 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0111-txxvf] Starting log collection thread 125421643368000 for psm-grpc-client-b5cc8898d-bbqhq
I0125 01:11:35.665963 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:11:38.733592 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] path_matching_test.TestFullPathMatchEmptyCall.test_client_config
I0125 01:11:38.734137 125421742620672 client_app.py:294] [psm-grpc-client-b5cc8898d-bbqhq] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:11:39.526608 125421742620672 client_app.py:322] [psm-grpc-client-b5cc8898d-bbqhq] xDS control plane channel:
I0125 01:11:49.554142 125421742620672 client_app.py:322] [psm-grpc-client-b5cc8898d-bbqhq] xDS control plane channel:
I0125 01:11:51.563474 125421742620672 client_app.py:333] [psm-grpc-client-b5cc8898d-bbqhq] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:11:51.563744 125421742620672 client_app.py:304] [psm-grpc-client-b5cc8898d-bbqhq] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:11:51.603289 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:11:43.102539Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/path-matching.test-full-path-match-empty-call:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767471747782819'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/path-matching.test-full-path-match-empty-call:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_20_path-matching.test-full-path-match-empty-call:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:11:43.412463Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_20_path-matching.test-full-path-match-empty-call:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767471747782819'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_20_path-matching.test-full-path-match-empty-call:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
path: /grpc.testing.TestService/EmptyCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_20_path-matching.test-full-path-match-empty-call:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_20_path-matching.test-full-path-match-empty-call:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:11:46.171116Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:11:44.612705Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:11:44.497853Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767471747782819'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:11:44.497853Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767471747782819'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/de2263d5-eee9-489e-a3ca-a4cd1bc3e315
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.61
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.61
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] path_matching_test.TestFullPathMatchEmptyCall.test_client_config
I0125 01:11:51.603666 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: path_matching_test.TestFullPathMatchEmptyCall.test_client_config -----

[ RUN ] path_matching_test.TestFullPathMatchEmptyCall.test_rpc_distribution
I0125 01:11:51.603999 125421742620672 grpc.py:75] [psm-grpc-client-b5cc8898d-bbqhq:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['EMPTY_CALL']}), timeout=5, wait_for_ready=True)
I0125 01:11:53.613858 125421742620672 grpc.py:75] [psm-grpc-client-b5cc8898d-bbqhq:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:11:59.634466 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-b5cc8898d-bbqhq] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 150
rpcs_by_method:
EmptyCall:
psm-grpc-server-alternative-79bb77f689-55phr: 150

[ OK ] path_matching_test.TestFullPathMatchEmptyCall.test_rpc_distribution
I0125 01:11:59.634876 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: path_matching_test.TestFullPathMatchEmptyCall.test_rpc_distribution -----

I0125 01:11:59.635023 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestFullPathMatchEmptyCall teardown -----
I0125 01:11:59.687153 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:12:09.788656 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:12:09.788948 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0111-txxvf
I0125 01:12:39.908304 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0111-txxvf deleted
I0125 01:12:39.908632 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:12:39.908829 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-383lve3l:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0111-txxvf%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-383lve3l%22;timeRange=2025-01-25T01:11:31.475834Z%2F2025-01-25T01:12:39.908473Z;cursorTimestamp=2025-01-25T01:11:38.733829Z?project=grpc-testing
I0125 01:12:39.908936 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestFullPathMatchUnaryCall -----
I0125 01:12:39.909001 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:12:39.909118 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:12:39.909271 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0112-trvzh
I0125 01:12:39.909573 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0112-trvzh: server_target=xds:///path-matching.test-full-path-match-unary-call:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:12:39.909736 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0112-trvzh%22;timeRange=2025-01-25T01:12:39.909644Z%2F2025-01-25T01:42:39.909644Z?project=grpc-testing
I0125 01:12:39.910174 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0112-trvzh
labels:
name: interop-psm-url-map-client-20250125-0112-trvzh
owner: xds-k8s-interop-test
...

I0125 01:12:39.942027 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0112-trvzh created
I0125 01:12:39.944645 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0112-trvzh
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-iec8rhqe
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-iec8rhqe
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-iec8rhqe
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///path-matching.test-full-path-match-unary-call:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:12:39.983675 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:12:39.983885 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:12:40.053862 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-5bf995f699-kqrbs']
I0125 01:12:40.054198 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-5bf995f699-kqrbs to start
I0125 01:12:43.137213 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-5bf995f699-kqrbs ready, IP: [{'ip': '10.60.0.62'}]
I0125 01:12:43.137450 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-5bf995f699-kqrbs to url_map/test_app_logs/interop-psm-url-map-client-20250125-0112-trvzh_psm-grpc-client-5bf995f699-kqrbs.log
I0125 01:12:43.137887 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0112-trvzh] Starting log collection thread 125421643368000 for psm-grpc-client-5bf995f699-kqrbs
I0125 01:12:43.138147 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:12:47.222838 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] path_matching_test.TestFullPathMatchUnaryCall.test_client_config
I0125 01:12:47.223380 125421742620672 client_app.py:294] [psm-grpc-client-5bf995f699-kqrbs] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:12:48.035052 125421742620672 client_app.py:322] [psm-grpc-client-5bf995f699-kqrbs] xDS control plane channel:
I0125 01:12:58.054030 125421742620672 client_app.py:322] [psm-grpc-client-5bf995f699-kqrbs] xDS control plane channel:
I0125 01:13:00.063456 125421742620672 client_app.py:333] [psm-grpc-client-5bf995f699-kqrbs] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:13:00.063733 125421742620672 client_app.py:304] [psm-grpc-client-5bf995f699-kqrbs] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:13:00.107509 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:12:54.893631Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:12:53.397720Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:12:52.026365Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_21_path-matching.test-full-path-match-unary-call:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767531063980271'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_21_path-matching.test-full-path-match-unary-call:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
path: /grpc.testing.TestService/UnaryCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_21_path-matching.test-full-path-match-unary-call:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_21_path-matching.test-full-path-match-unary-call:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:12:53.227881Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767531063980271'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:12:53.227881Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767531063980271'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:12:51.616989Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/path-matching.test-full-path-match-unary-call:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767531063980271'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/path-matching.test-full-path-match-unary-call:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_21_path-matching.test-full-path-match-unary-call:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/442600b1-2f96-441c-902b-3c4de96b3a48
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.62
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.62
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] path_matching_test.TestFullPathMatchUnaryCall.test_client_config
I0125 01:13:00.107935 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: path_matching_test.TestFullPathMatchUnaryCall.test_client_config -----

[ RUN ] path_matching_test.TestFullPathMatchUnaryCall.test_rpc_distribution
I0125 01:13:00.108243 125421742620672 grpc.py:75] [psm-grpc-client-5bf995f699-kqrbs:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL']}), timeout=5, wait_for_ready=True)
I0125 01:13:02.118322 125421742620672 grpc.py:75] [psm-grpc-client-5bf995f699-kqrbs:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:13:08.120297 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-5bf995f699-kqrbs] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 150
rpcs_by_method:
UnaryCall:
psm-grpc-server-alternative-79bb77f689-55phr: 150

[ OK ] path_matching_test.TestFullPathMatchUnaryCall.test_rpc_distribution
I0125 01:13:08.120700 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: path_matching_test.TestFullPathMatchUnaryCall.test_rpc_distribution -----

I0125 01:13:08.120846 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestFullPathMatchUnaryCall teardown -----
I0125 01:13:08.132293 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:13:18.197041 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:13:18.197299 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0112-trvzh
I0125 01:13:48.292357 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0112-trvzh deleted
I0125 01:13:48.292747 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:13:48.292970 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-iec8rhqe:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0112-trvzh%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-iec8rhqe%22;timeRange=2025-01-25T01:12:39.909639Z%2F2025-01-25T01:13:48.292543Z;cursorTimestamp=2025-01-25T01:12:47.223049Z?project=grpc-testing
I0125 01:13:48.293094 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestRegexMatch -----
I0125 01:13:48.293167 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:13:48.293307 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:13:48.293445 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0113-wdaxf
I0125 01:13:48.293781 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0113-wdaxf: server_target=xds:///path-matching.test-regex-match:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:13:48.293937 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0113-wdaxf%22;timeRange=2025-01-25T01:13:48.293856Z%2F2025-01-25T01:43:48.293856Z?project=grpc-testing
I0125 01:13:48.294404 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0113-wdaxf
labels:
name: interop-psm-url-map-client-20250125-0113-wdaxf
owner: xds-k8s-interop-test
...

I0125 01:13:48.305764 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0113-wdaxf created
I0125 01:13:48.308365 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0113-wdaxf
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-v0ya1r4w
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-v0ya1r4w
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-v0ya1r4w
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///path-matching.test-regex-match:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:13:48.353992 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:13:48.354170 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:13:49.398132 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-7c8d74c6c-mg9p7']
I0125 01:13:49.398367 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-7c8d74c6c-mg9p7 to start
I0125 01:13:51.472889 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-7c8d74c6c-mg9p7 ready, IP: [{'ip': '10.60.0.63'}]
I0125 01:13:51.473125 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-7c8d74c6c-mg9p7 to url_map/test_app_logs/interop-psm-url-map-client-20250125-0113-wdaxf_psm-grpc-client-7c8d74c6c-mg9p7.log
I0125 01:13:51.473448 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0113-wdaxf] Starting log collection thread 125421643368000 for psm-grpc-client-7c8d74c6c-mg9p7
I0125 01:13:51.473606 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:13:55.548639 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] path_matching_test.TestRegexMatch.test_client_config
I0125 01:13:55.549130 125421742620672 client_app.py:294] [psm-grpc-client-7c8d74c6c-mg9p7] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:13:56.700847 125421742620672 client_app.py:322] [psm-grpc-client-7c8d74c6c-mg9p7] xDS control plane channel:
I0125 01:14:06.717306 125421742620672 client_app.py:322] [psm-grpc-client-7c8d74c6c-mg9p7] xDS control plane channel:
I0125 01:14:08.728168 125421742620672 client_app.py:333] [psm-grpc-client-7c8d74c6c-mg9p7] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:14:08.728419 125421742620672 client_app.py:304] [psm-grpc-client-7c8d74c6c-mg9p7] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:14:08.766471 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:13:59.296305Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/path-matching.test-regex-match:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767594156710493'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/path-matching.test-regex-match:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_23_path-matching.test-regex-match:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:13:59.802817Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_23_path-matching.test-regex-match:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767594156710493'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_23_path-matching.test-regex-match:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
safeRegex:
googleRe2: {}
regex: ^\/.*\/UnaryCall$
name: URL_MAP/830293263384_interop-psm-url-map-url-map_23_path-matching.test-regex-match:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_23_path-matching.test-regex-match:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:14:01.293843Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767594156710493'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:14:01.293843Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767594156710493'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:14:03.326736Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:14:01.512281Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/ddceff74-8635-41c8-bf75-ad2eeb1e42ef
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.63
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.63
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] path_matching_test.TestRegexMatch.test_client_config
I0125 01:14:08.766866 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: path_matching_test.TestRegexMatch.test_client_config -----

[ RUN ] path_matching_test.TestRegexMatch.test_rpc_distribution
I0125 01:14:08.767186 125421742620672 grpc.py:75] [psm-grpc-client-7c8d74c6c-mg9p7:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL']}), timeout=5, wait_for_ready=True)
I0125 01:14:10.777879 125421742620672 grpc.py:75] [psm-grpc-client-7c8d74c6c-mg9p7:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:14:16.784023 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-7c8d74c6c-mg9p7] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 150
rpcs_by_method:
UnaryCall:
psm-grpc-server-alternative-79bb77f689-55phr: 150

[ OK ] path_matching_test.TestRegexMatch.test_rpc_distribution
I0125 01:14:16.784446 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: path_matching_test.TestRegexMatch.test_rpc_distribution -----

I0125 01:14:16.784569 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestRegexMatch teardown -----
I0125 01:14:16.853792 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:14:26.943515 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:14:26.943787 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0113-wdaxf
I0125 01:14:57.037990 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0113-wdaxf deleted
I0125 01:14:57.038344 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:14:57.038572 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-v0ya1r4w:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0113-wdaxf%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-v0ya1r4w%22;timeRange=2025-01-25T01:13:48.293850Z%2F2025-01-25T01:14:57.038160Z;cursorTimestamp=2025-01-25T01:13:55.548854Z?project=grpc-testing
I0125 01:14:57.038701 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestTwoRoutesAndPrefixMatch -----
I0125 01:14:57.038788 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:14:57.038913 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:14:57.039053 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0114-mxn84
I0125 01:14:57.039391 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0114-mxn84: server_target=xds:///path-matching.test-two-routes-and-prefix-match:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:14:57.039553 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0114-mxn84%22;timeRange=2025-01-25T01:14:57.039478Z%2F2025-01-25T01:44:57.039478Z?project=grpc-testing
I0125 01:14:57.040020 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0114-mxn84
labels:
name: interop-psm-url-map-client-20250125-0114-mxn84
owner: xds-k8s-interop-test
...

I0125 01:14:57.066543 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0114-mxn84 created
I0125 01:14:57.069126 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0114-mxn84
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-gyncsvg3
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-gyncsvg3
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-gyncsvg3
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///path-matching.test-two-routes-and-prefix-match:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:14:57.115786 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:14:57.115970 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:14:58.240086 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-579444c888-ctt5m']
I0125 01:14:58.240309 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-579444c888-ctt5m to start
I0125 01:15:01.344542 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-579444c888-ctt5m ready, IP: [{'ip': '10.60.0.64'}]
I0125 01:15:01.344830 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-579444c888-ctt5m to url_map/test_app_logs/interop-psm-url-map-client-20250125-0114-mxn84_psm-grpc-client-579444c888-ctt5m.log
I0125 01:15:01.345251 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0114-mxn84] Starting log collection thread 125421643368000 for psm-grpc-client-579444c888-ctt5m
I0125 01:15:01.345484 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:15:04.414311 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] path_matching_test.TestTwoRoutesAndPrefixMatch.test_client_config
I0125 01:15:04.414843 125421742620672 client_app.py:294] [psm-grpc-client-579444c888-ctt5m] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:15:05.312070 125421742620672 client_app.py:322] [psm-grpc-client-579444c888-ctt5m] xDS control plane channel:
I0125 01:15:15.333407 125421742620672 client_app.py:322] [psm-grpc-client-579444c888-ctt5m] xDS control plane channel:
I0125 01:15:17.343703 125421742620672 client_app.py:333] [psm-grpc-client-579444c888-ctt5m] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:15:17.344317 125421742620672 client_app.py:304] [psm-grpc-client-579444c888-ctt5m] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:15:17.380668 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:15:13.086325Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.6.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_2808853733606791380_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:15:10.924341Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:15:09.415336Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_22_path-matching.test-two-routes-and-prefix-match:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767696066149717'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_22_path-matching.test-two-routes-and-prefix-match:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
prefix: /grpc.testing.TestService/Unary
name: URL_MAP/830293263384_interop-psm-url-map-url-map_22_path-matching.test-two-routes-and-prefix-match:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
path: /grpc.testing.TestService/EmptyCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_22_path-matching.test-two-routes-and-prefix-match:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_22_path-matching.test-two-routes-and-prefix-match:8848-route-2
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:15:10.730295Z'
name: cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767696066149717'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4754123062816381723
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service-alt
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service-alt
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:15:10.730295Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767696066149717'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:15:09.014944Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/path-matching.test-two-routes-and-prefix-match:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767696066149717'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/path-matching.test-two-routes-and-prefix-match:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_22_path-matching.test-two-routes-and-prefix-match:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/dd784e0b-4044-454d-b9eb-20e2ba1f91ef
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.64
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.64
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] path_matching_test.TestTwoRoutesAndPrefixMatch.test_client_config
I0125 01:15:17.381309 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: path_matching_test.TestTwoRoutesAndPrefixMatch.test_client_config -----

[ RUN ] path_matching_test.TestTwoRoutesAndPrefixMatch.test_rpc_distribution
I0125 01:15:17.381665 125421742620672 grpc.py:75] [psm-grpc-client-579444c888-ctt5m:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL', 'EMPTY_CALL']}), timeout=5, wait_for_ready=True)
I0125 01:15:19.392104 125421742620672 grpc.py:75] [psm-grpc-client-579444c888-ctt5m:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 150, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:15:22.398689 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-579444c888-ctt5m] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-alternative-79bb77f689-55phr: 75
psm-grpc-server-7c7cf47f74-l26pq: 75
rpcs_by_method:
EmptyCall:
psm-grpc-server-alternative-79bb77f689-55phr: 75
UnaryCall:
psm-grpc-server-7c7cf47f74-l26pq: 75

[ OK ] path_matching_test.TestTwoRoutesAndPrefixMatch.test_rpc_distribution
I0125 01:15:22.399168 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: path_matching_test.TestTwoRoutesAndPrefixMatch.test_rpc_distribution -----

I0125 01:15:22.399352 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestTwoRoutesAndPrefixMatch teardown -----
I0125 01:15:22.410737 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:15:32.466469 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:15:32.466754 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0114-mxn84
I0125 01:16:02.563588 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0114-mxn84 deleted
I0125 01:16:02.563981 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:16:02.564175 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-gyncsvg3:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0114-mxn84%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-gyncsvg3%22;timeRange=2025-01-25T01:14:57.039463Z%2F2025-01-25T01:16:02.563810Z;cursorTimestamp=2025-01-25T01:15:04.414528Z?project=grpc-testing
I0125 01:16:02.564307 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestRetryUpTo3AttemptsAndFail -----
I0125 01:16:02.564361 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:16:02.564547 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:16:02.564662 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0116-7i5j5
I0125 01:16:02.564973 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0116-7i5j5: server_target=xds:///retry.test-retry-up-to3-attempts-and-fail:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:16:02.565115 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0116-7i5j5%22;timeRange=2025-01-25T01:16:02.565041Z%2F2025-01-25T01:46:02.565041Z?project=grpc-testing
I0125 01:16:02.565580 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0116-7i5j5
labels:
name: interop-psm-url-map-client-20250125-0116-7i5j5
owner: xds-k8s-interop-test
...

I0125 01:16:02.577621 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0116-7i5j5 created
I0125 01:16:02.580287 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0116-7i5j5
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-zmwl88at
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-zmwl88at
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-zmwl88at
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///retry.test-retry-up-to3-attempts-and-fail:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:16:02.626438 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:16:02.626612 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:16:03.680442 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-757d9d98d9-t4g58']
I0125 01:16:03.680623 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-757d9d98d9-t4g58 to start
I0125 01:16:05.750928 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-757d9d98d9-t4g58 ready, IP: [{'ip': '10.60.0.65'}]
I0125 01:16:05.751170 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-757d9d98d9-t4g58 to url_map/test_app_logs/interop-psm-url-map-client-20250125-0116-7i5j5_psm-grpc-client-757d9d98d9-t4g58.log
I0125 01:16:05.751453 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0116-7i5j5] Starting log collection thread 125421643368000 for psm-grpc-client-757d9d98d9-t4g58
I0125 01:16:05.751615 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:16:09.827631 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] retry_test.TestRetryUpTo3AttemptsAndFail.test_client_config
I0125 01:16:09.828076 125421742620672 client_app.py:294] [psm-grpc-client-757d9d98d9-t4g58] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:16:10.619419 125421742620672 client_app.py:322] [psm-grpc-client-757d9d98d9-t4g58] xDS control plane channel:
I0125 01:16:20.639049 125421742620672 client_app.py:322] [psm-grpc-client-757d9d98d9-t4g58] xDS control plane channel:
I0125 01:16:22.648015 125421742620672 client_app.py:333] [psm-grpc-client-757d9d98d9-t4g58] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:16:22.648244 125421742620672 client_app.py:304] [psm-grpc-client-757d9d98d9-t4g58] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:16:22.702167 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:16:15.826450Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_25_retry.test-retry-up-to3-attempts-and-fail:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767757917646482'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_25_retry.test-retry-up-to3-attempts-and-fail:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
path: /grpc.testing.TestService/UnaryCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_25_retry.test-retry-up-to3-attempts-and-fail:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 3
perTryTimeout: 30s
retryOn: unavailable
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_25_retry.test-retry-up-to3-attempts-and-fail:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:16:15.803824Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/retry.test-retry-up-to3-attempts-and-fail:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767757917646482'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/retry.test-retry-up-to3-attempts-and-fail:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_25_retry.test-retry-up-to3-attempts-and-fail:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:16:16.304129Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767757917646482'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:16:16.594605Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/b598d6cc-3c02-4fc5-a2ae-8405dba848ba
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.65
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.65
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] retry_test.TestRetryUpTo3AttemptsAndFail.test_client_config
I0125 01:16:22.702543 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: retry_test.TestRetryUpTo3AttemptsAndFail.test_client_config -----

[ RUN ] retry_test.TestRetryUpTo3AttemptsAndFail.test_rpc_distribution
I0125 01:16:22.702860 125421742620672 grpc.py:75] [psm-grpc-client-757d9d98d9-t4g58:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL'], 'metadata': [{'type': 'UNARY_CALL', 'key': 'rpc-behavior', 'value': 'succeed-on-retry-attempt-4,error-code-14'}]}), timeout=5, wait_for_ready=True)
I0125 01:16:24.714811 125421742620672 grpc.py:75] [psm-grpc-client-757d9d98d9-t4g58:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 10, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:16:25.224523 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-757d9d98d9-t4g58] << Received LoadBalancerStatsResponse:
num_failures: 10
rpcs_by_peer: {}
rpcs_by_method: {}

I0125 01:16:25.224744 125421742620672 grpc.py:75] [psm-grpc-client-757d9d98d9-t4g58:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 01:16:25.241023 125421742620672 xds_url_map_testcase.py:408] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-757d9d98d9-t4g58: before:
- method: EMPTY_CALL
rpcs_started: 383
result:
(0, OK): 383
- method: UNARY_CALL
rpcs_started: 446
result:
(14, UNAVAILABLE): 60
(0, OK): 383

I0125 01:16:41.257329 125421742620672 grpc.py:75] [psm-grpc-client-757d9d98d9-t4g58:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 01:16:41.263197 125421742620672 xds_url_map_testcase.py:418] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-757d9d98d9-t4g58: after:
- method: EMPTY_CALL
rpcs_started: 383
result:
(0, OK): 383
- method: UNARY_CALL
rpcs_started: 847
result:
(14, UNAVAILABLE): 461
(0, OK): 383

[ OK ] retry_test.TestRetryUpTo3AttemptsAndFail.test_rpc_distribution
I0125 01:16:41.263568 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: retry_test.TestRetryUpTo3AttemptsAndFail.test_rpc_distribution -----

I0125 01:16:41.263722 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestRetryUpTo3AttemptsAndFail teardown -----
I0125 01:16:41.334411 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:16:51.420909 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:16:51.421134 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0116-7i5j5
I0125 01:17:21.504550 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0116-7i5j5 deleted
I0125 01:17:21.504947 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:17:21.505125 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-zmwl88at:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0116-7i5j5%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-zmwl88at%22;timeRange=2025-01-25T01:16:02.565037Z%2F2025-01-25T01:17:21.504775Z;cursorTimestamp=2025-01-25T01:16:09.827819Z?project=grpc-testing
I0125 01:17:21.505217 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestRetryUpTo4AttemptsAndSucceed -----
I0125 01:17:21.505269 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:17:21.505423 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:17:21.505553 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0117-2mil8
I0125 01:17:21.505891 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0117-2mil8: server_target=xds:///retry.test-retry-up-to4-attempts-and-succeed:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:17:21.506026 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0117-2mil8%22;timeRange=2025-01-25T01:17:21.505962Z%2F2025-01-25T01:47:21.505962Z?project=grpc-testing
I0125 01:17:21.506466 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0117-2mil8
labels:
name: interop-psm-url-map-client-20250125-0117-2mil8
owner: xds-k8s-interop-test
...

I0125 01:17:21.540188 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0117-2mil8 created
I0125 01:17:21.542811 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0117-2mil8
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-5gk2x7pl
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-5gk2x7pl
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-5gk2x7pl
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///retry.test-retry-up-to4-attempts-and-succeed:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:17:21.585175 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:17:21.585348 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:17:22.636678 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-7c86f6ccfc-s595q']
I0125 01:17:22.636864 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-7c86f6ccfc-s595q to start
I0125 01:17:24.705086 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-7c86f6ccfc-s595q ready, IP: [{'ip': '10.60.0.66'}]
I0125 01:17:24.705353 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-7c86f6ccfc-s595q to url_map/test_app_logs/interop-psm-url-map-client-20250125-0117-2mil8_psm-grpc-client-7c86f6ccfc-s595q.log
I0125 01:17:24.705753 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0117-2mil8] Starting log collection thread 125421643368000 for psm-grpc-client-7c86f6ccfc-s595q
I0125 01:17:24.706050 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:17:28.779547 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] retry_test.TestRetryUpTo4AttemptsAndSucceed.test_client_config
I0125 01:17:28.779982 125421742620672 client_app.py:294] [psm-grpc-client-7c86f6ccfc-s595q] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:17:29.519159 125421742620672 client_app.py:322] [psm-grpc-client-7c86f6ccfc-s595q] xDS control plane channel:
I0125 01:17:39.538077 125421742620672 client_app.py:322] [psm-grpc-client-7c86f6ccfc-s595q] xDS control plane channel:
I0125 01:17:41.548684 125421742620672 client_app.py:333] [psm-grpc-client-7c86f6ccfc-s595q] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:17:41.548977 125421742620672 client_app.py:304] [psm-grpc-client-7c86f6ccfc-s595q] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:17:41.586148 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:17:38.624558Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_26_retry.test-retry-up-to4-attempts-and-succeed:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767843564856562'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_26_retry.test-retry-up-to4-attempts-and-succeed:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
path: /grpc.testing.TestService/UnaryCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_26_retry.test-retry-up-to4-attempts-and-succeed:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 4
perTryTimeout: 30s
retryOn: unavailable
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_26_retry.test-retry-up-to4-attempts-and-succeed:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:17:40.511864Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '2'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:17:38.605827Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/retry.test-retry-up-to4-attempts-and-succeed:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767843564856562'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/retry.test-retry-up-to4-attempts-and-succeed:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_26_retry.test-retry-up-to4-attempts-and-succeed:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:17:38.032305Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767843564856562'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/ee281750-38d0-4bab-82a4-c499538a2ae1
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.66
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.66
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] retry_test.TestRetryUpTo4AttemptsAndSucceed.test_client_config
I0125 01:17:41.586501 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: retry_test.TestRetryUpTo4AttemptsAndSucceed.test_client_config -----

[ RUN ] retry_test.TestRetryUpTo4AttemptsAndSucceed.test_rpc_distribution
I0125 01:17:41.586814 125421742620672 grpc.py:75] [psm-grpc-client-7c86f6ccfc-s595q:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL'], 'metadata': [{'type': 'UNARY_CALL', 'key': 'rpc-behavior', 'value': 'succeed-on-retry-attempt-4,error-code-14'}]}), timeout=5, wait_for_ready=True)
I0125 01:17:43.600070 125421742620672 grpc.py:75] [psm-grpc-client-7c86f6ccfc-s595q:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 10, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:17:44.229903 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-7c86f6ccfc-s595q] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-7c7cf47f74-l26pq: 10
rpcs_by_method:
UnaryCall:
psm-grpc-server-7c7cf47f74-l26pq: 10

I0125 01:17:44.230158 125421742620672 grpc.py:75] [psm-grpc-client-7c86f6ccfc-s595q:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 01:17:44.243902 125421742620672 xds_url_map_testcase.py:408] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-7c86f6ccfc-s595q: before:
- method: EMPTY_CALL
rpcs_started: 376
result:
(0, OK): 376
- method: UNARY_CALL
rpcs_started: 441
result:
(0, OK): 437

I0125 01:18:00.260284 125421742620672 grpc.py:75] [psm-grpc-client-7c86f6ccfc-s595q:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 01:18:00.266126 125421742620672 xds_url_map_testcase.py:418] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-7c86f6ccfc-s595q: after:
- method: EMPTY_CALL
rpcs_started: 376
result:
(0, OK): 376
- method: UNARY_CALL
rpcs_started: 842
result:
(0, OK): 837

[ OK ] retry_test.TestRetryUpTo4AttemptsAndSucceed.test_rpc_distribution
I0125 01:18:00.266451 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: retry_test.TestRetryUpTo4AttemptsAndSucceed.test_rpc_distribution -----

I0125 01:18:00.266552 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestRetryUpTo4AttemptsAndSucceed teardown -----
I0125 01:18:00.278966 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:18:10.344189 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:18:10.344486 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0117-2mil8
I0125 01:18:40.439503 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0117-2mil8 deleted
I0125 01:18:40.439924 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:18:40.440135 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-5gk2x7pl:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0117-2mil8%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-5gk2x7pl%22;timeRange=2025-01-25T01:17:21.505959Z%2F2025-01-25T01:18:40.439742Z;cursorTimestamp=2025-01-25T01:17:28.779730Z?project=grpc-testing
I0125 01:18:40.440277 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestTimeoutInRouteRule -----
I0125 01:18:40.440340 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:18:40.440443 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:18:40.440567 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0118-1mxnm
I0125 01:18:40.440905 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0118-1mxnm: server_target=xds:///timeout.test-timeout-in-route-rule:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:18:40.441050 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0118-1mxnm%22;timeRange=2025-01-25T01:18:40.440975Z%2F2025-01-25T01:48:40.440975Z?project=grpc-testing
I0125 01:18:40.441566 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0118-1mxnm
labels:
name: interop-psm-url-map-client-20250125-0118-1mxnm
owner: xds-k8s-interop-test
...

I0125 01:18:40.454769 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0118-1mxnm created
I0125 01:18:40.457582 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0118-1mxnm
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-1yta0ex9
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-1yta0ex9
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-1yta0ex9
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///timeout.test-timeout-in-route-rule:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:18:40.497951 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:18:40.498143 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:18:41.544631 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-bc66b9d7-65hjw']
I0125 01:18:41.544824 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-bc66b9d7-65hjw to start
I0125 01:18:43.609932 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-bc66b9d7-65hjw ready, IP: [{'ip': '10.60.0.67'}]
I0125 01:18:43.610194 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-bc66b9d7-65hjw to url_map/test_app_logs/interop-psm-url-map-client-20250125-0118-1mxnm_psm-grpc-client-bc66b9d7-65hjw.log
I0125 01:18:43.610625 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0118-1mxnm] Starting log collection thread 125421643368000 for psm-grpc-client-bc66b9d7-65hjw
I0125 01:18:43.610965 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:18:47.685179 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] timeout_test.TestTimeoutInRouteRule.test_client_config
I0125 01:18:47.685570 125421742620672 client_app.py:294] [psm-grpc-client-bc66b9d7-65hjw] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:18:48.503977 125421742620672 client_app.py:322] [psm-grpc-client-bc66b9d7-65hjw] xDS control plane channel:
I0125 01:18:58.523391 125421742620672 client_app.py:322] [psm-grpc-client-bc66b9d7-65hjw] xDS control plane channel:
I0125 01:19:00.535195 125421742620672 client_app.py:333] [psm-grpc-client-bc66b9d7-65hjw] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:19:00.535450 125421742620672 client_app.py:304] [psm-grpc-client-bc66b9d7-65hjw] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:19:00.569039 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:18:51.690687Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/timeout.test-timeout-in-route-rule:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737767889006484432'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/timeout.test-timeout-in-route-rule:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_27_timeout.test-timeout-in-route-rule:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:18:52.028332Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_27_timeout.test-timeout-in-route-rule:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737767889006484432'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_27_timeout.test-timeout-in-route-rule:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
path: /grpc.testing.TestService/UnaryCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_27_timeout.test-timeout-in-route-rule:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
maxStreamDuration:
grpcTimeoutHeaderMax: 3s
maxStreamDuration: 3s
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_27_timeout.test-timeout-in-route-rule:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:18:52.999775Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737767889006484432'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:18:53.124803Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/3f2e862c-33d9-4c5f-9018-883d20cd39b6
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.67
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.67
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] timeout_test.TestTimeoutInRouteRule.test_client_config
I0125 01:19:00.569414 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: timeout_test.TestTimeoutInRouteRule.test_client_config -----

[ RUN ] timeout_test.TestTimeoutInRouteRule.test_rpc_distribution
I0125 01:19:00.569787 125421742620672 grpc.py:75] [psm-grpc-client-bc66b9d7-65hjw:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL', 'EMPTY_CALL'], 'metadata': [{'type': 'UNARY_CALL', 'key': 'rpc-behavior', 'value': 'sleep-4'}, {'key': 'rpc-behavior', 'value': 'sleep-4'}]}), timeout=5, wait_for_ready=True)
I0125 01:19:02.581165 125421742620672 grpc.py:75] [psm-grpc-client-bc66b9d7-65hjw:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 25, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:19:07.069958 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-bc66b9d7-65hjw] << Received LoadBalancerStatsResponse:
num_failures: 13
rpcs_by_peer:
psm-grpc-server-7c7cf47f74-l26pq: 12
rpcs_by_method:
EmptyCall:
psm-grpc-server-7c7cf47f74-l26pq: 12

I0125 01:19:07.070212 125421742620672 grpc.py:75] [psm-grpc-client-bc66b9d7-65hjw:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 01:19:07.082263 125421742620672 xds_url_map_testcase.py:408] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-bc66b9d7-65hjw: before:
- method: EMPTY_CALL
rpcs_started: 556
result:
(0, OK): 456
- method: UNARY_CALL
rpcs_started: 556
result:
(0, OK): 394
(4, DEADLINE_EXCEEDED): 87

I0125 01:19:17.092591 125421742620672 grpc.py:75] [psm-grpc-client-bc66b9d7-65hjw:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 01:19:17.098322 125421742620672 xds_url_map_testcase.py:418] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-bc66b9d7-65hjw: after:
- method: EMPTY_CALL
rpcs_started: 807
result:
(0, OK): 707
- method: UNARY_CALL
rpcs_started: 807
result:
(0, OK): 394
(4, DEADLINE_EXCEEDED): 338

[ OK ] timeout_test.TestTimeoutInRouteRule.test_rpc_distribution
I0125 01:19:17.098677 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: timeout_test.TestTimeoutInRouteRule.test_rpc_distribution -----

I0125 01:19:17.098794 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestTimeoutInRouteRule teardown -----
I0125 01:19:17.159959 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:19:27.243163 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:19:27.243398 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0118-1mxnm
I0125 01:19:57.349121 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0118-1mxnm deleted
I0125 01:19:57.349424 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:19:57.349581 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-1yta0ex9:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0118-1mxnm%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-1yta0ex9%22;timeRange=2025-01-25T01:18:40.440971Z%2F2025-01-25T01:19:57.349273Z;cursorTimestamp=2025-01-25T01:18:47.685338Z?project=grpc-testing
I0125 01:19:57.349667 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestTimeoutInApplication -----
I0125 01:19:57.349734 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:19:57.349824 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:19:57.349933 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0119-4inh2
I0125 01:19:57.350202 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0119-4inh2: server_target=xds:///timeout.test-timeout-in-application:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:19:57.350355 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0119-4inh2%22;timeRange=2025-01-25T01:19:57.350267Z%2F2025-01-25T01:49:57.350267Z?project=grpc-testing
I0125 01:19:57.350812 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0119-4inh2
labels:
name: interop-psm-url-map-client-20250125-0119-4inh2
owner: xds-k8s-interop-test
...

I0125 01:19:57.380658 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0119-4inh2 created
I0125 01:19:57.383325 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0119-4inh2
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-4h5lqtf7
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-4h5lqtf7
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-4h5lqtf7
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///timeout.test-timeout-in-application:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:19:57.428374 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:19:57.428537 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:19:58.481273 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-64d45c58f-gc9lj']
I0125 01:19:58.481456 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-64d45c58f-gc9lj to start
I0125 01:20:00.548088 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-64d45c58f-gc9lj ready, IP: [{'ip': '10.60.0.68'}]
I0125 01:20:00.548336 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-64d45c58f-gc9lj to url_map/test_app_logs/interop-psm-url-map-client-20250125-0119-4inh2_psm-grpc-client-64d45c58f-gc9lj.log
I0125 01:20:00.548743 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0119-4inh2] Starting log collection thread 125421643368000 for psm-grpc-client-64d45c58f-gc9lj
I0125 01:20:00.548962 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:20:04.626969 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] timeout_test.TestTimeoutInApplication.test_client_config
I0125 01:20:04.627452 125421742620672 client_app.py:294] [psm-grpc-client-64d45c58f-gc9lj] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:20:05.403362 125421742620672 client_app.py:322] [psm-grpc-client-64d45c58f-gc9lj] xDS control plane channel:
I0125 01:20:15.422667 125421742620672 client_app.py:322] [psm-grpc-client-64d45c58f-gc9lj] xDS control plane channel:
I0125 01:20:17.434937 125421742620672 client_app.py:333] [psm-grpc-client-64d45c58f-gc9lj] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:20:17.435184 125421742620672 client_app.py:304] [psm-grpc-client-64d45c58f-gc9lj] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:20:17.470357 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:20:13.872166Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737768002034386782'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:20:13.908215Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_28_timeout.test-timeout-in-application:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737768002034386782'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_28_timeout.test-timeout-in-application:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
path: /grpc.testing.TestService/UnaryCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_28_timeout.test-timeout-in-application:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
maxStreamDuration:
grpcTimeoutHeaderMax: 3s
maxStreamDuration: 3s
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_28_timeout.test-timeout-in-application:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:20:10.409888Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:20:13.898979Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/timeout.test-timeout-in-application:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737768002034386782'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/timeout.test-timeout-in-application:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_28_timeout.test-timeout-in-application:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/83714aa8-6b92-49c0-b192-f377436d7df8
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.68
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.68
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] timeout_test.TestTimeoutInApplication.test_client_config
I0125 01:20:17.470725 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: timeout_test.TestTimeoutInApplication.test_client_config -----

[ RUN ] timeout_test.TestTimeoutInApplication.test_rpc_distribution
I0125 01:20:17.471030 125421742620672 grpc.py:75] [psm-grpc-client-64d45c58f-gc9lj:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL'], 'metadata': [{'type': 'UNARY_CALL', 'key': 'rpc-behavior', 'value': 'sleep-2'}], 'timeoutSec': 1}), timeout=5, wait_for_ready=True)
I0125 01:20:19.482333 125421742620672 grpc.py:75] [psm-grpc-client-64d45c58f-gc9lj:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 25, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:20:21.501305 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-64d45c58f-gc9lj] << Received LoadBalancerStatsResponse:
num_failures: 25
rpcs_by_peer: {}
rpcs_by_method: {}

I0125 01:20:21.501563 125421742620672 grpc.py:75] [psm-grpc-client-64d45c58f-gc9lj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 01:20:21.512370 125421742620672 xds_url_map_testcase.py:408] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-64d45c58f-gc9lj: before:
- method: EMPTY_CALL
rpcs_started: 384
result:
(0, OK): 384
- method: UNARY_CALL
rpcs_started: 485
result:
(0, OK): 384
(4, DEADLINE_EXCEEDED): 76

I0125 01:20:31.522738 125421742620672 grpc.py:75] [psm-grpc-client-64d45c58f-gc9lj:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 01:20:31.533324 125421742620672 xds_url_map_testcase.py:418] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-64d45c58f-gc9lj: after:
- method: EMPTY_CALL
rpcs_started: 384
result:
(0, OK): 384
- method: UNARY_CALL
rpcs_started: 735
result:
(0, OK): 384
(4, DEADLINE_EXCEEDED): 326

[ OK ] timeout_test.TestTimeoutInApplication.test_rpc_distribution
I0125 01:20:31.533657 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: timeout_test.TestTimeoutInApplication.test_rpc_distribution -----

I0125 01:20:31.533881 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestTimeoutInApplication teardown -----
I0125 01:20:31.545793 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:20:41.614057 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:20:41.614297 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0119-4inh2
I0125 01:21:11.708734 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0119-4inh2 deleted
I0125 01:21:11.709040 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:21:11.709206 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-4h5lqtf7:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0119-4inh2%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-4h5lqtf7%22;timeRange=2025-01-25T01:19:57.350263Z%2F2025-01-25T01:21:11.708893Z;cursorTimestamp=2025-01-25T01:20:04.627163Z?project=grpc-testing
I0125 01:21:11.709303 125421742620672 xds_url_map_testcase.py:220] ----- Testing TestTimeoutNotExceeded -----
I0125 01:21:11.709358 125421742620672 xds_url_map_testcase.py:221] Logs timezone: UTC
I0125 01:21:11.709444 125421742620672 xds_k8s_testcase.py:112] Detected language and version: TestConfig(client_lang='java', server_lang='java', version='dev-v1.70.x')
I0125 01:21:11.709554 125421742620672 xds_url_map_test_resources.py:236] GcpResourceManager: client_namespace_suffix=20250125-0121-aeg9y
I0125 01:21:11.709852 125421742620672 k8s_xds_client_runner.py:135] Deploying xDS test client "psm-grpc-client" to k8s namespace interop-psm-url-map-client-20250125-0121-aeg9y: server_target=xds:///timeout.test-timeout-not-exceeded:8848 rpc=UnaryCall,EmptyCall qps=25 metadata='' secure_mode=False print_response=True
I0125 01:21:11.709981 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0121-aeg9y%22;timeRange=2025-01-25T01:21:11.709916Z%2F2025-01-25T01:51:11.709916Z?project=grpc-testing
I0125 01:21:11.710425 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/namespace.yaml:
---
apiVersion: v1
kind: Namespace
metadata:
name: interop-psm-url-map-client-20250125-0121-aeg9y
labels:
name: interop-psm-url-map-client-20250125-0121-aeg9y
owner: xds-k8s-interop-test
...

I0125 01:21:11.727059 125421742620672 k8s_base_runner.py:371] Namespace interop-psm-url-map-client-20250125-0121-aeg9y created
I0125 01:21:11.729788 125421742620672 k8s_base_runner.py:351] Rendered template kubernetes-manifests/client.deployment.yaml:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: psm-grpc-client
namespace: interop-psm-url-map-client-20250125-0121-aeg9y
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-0uadl1o7
owner: xds-k8s-interop-test
spec:
replicas: 1
selector:
matchLabels:
app: psm-grpc-client
deployment_id: psm-grpc-client-0uadl1o7
template:
metadata:
labels:
app: psm-grpc-client
deployment_id: psm-grpc-client-0uadl1o7
owner: xds-k8s-interop-test
spec:
containers:
- name: psm-grpc-client
image: us-docker.pkg.dev/grpc-testing/psm-interop/java-client:5d55fc1f2c69e8946b6f6f22d04b2f68c76fb4d2
imagePullPolicy: Always
startupProbe:
tcpSocket:
port: 8079
periodSeconds: 3
failureThreshold: 1000
args:
- "--server=xds:///timeout.test-timeout-not-exceeded:8848"
- "--stats_port=8079"
- "--qps=25"
- "--rpc=UnaryCall,EmptyCall"
- "--metadata="
- "--print_response=True"
ports:
- containerPort: 8079
env:
- name: GRPC_XDS_BOOTSTRAP
value: "/tmp/grpc-xds/td-grpc-bootstrap.json"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RING_HASH
value: "true"
- name: GRPC_XDS_EXPERIMENTAL_ENABLE_RETRY
value: "true"
- name: GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_CUSTOM_LB_CONFIG
value: "true"
- name: GRPC_EXPERIMENTAL_XDS_ENABLE_OVERRIDE_HOST
value: "true"
volumeMounts:
- mountPath: /tmp/grpc-xds/
name: grpc-td-conf
readOnly: true
resources:
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
initContainers:
- name: grpc-td-init
image: us-docker.pkg.dev/grpc-testing/trafficdirector/td-grpc-bootstrap:ad35743ff01c0dc16a785e421591d7d52f3cdda4
imagePullPolicy: Always
args:
- "--output=/tmp/bootstrap/td-grpc-bootstrap.json"
- "--vpc-network-name=default-vpc"
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /tmp/bootstrap/
name: grpc-td-conf
volumes:
- name: grpc-td-conf
emptyDir:
medium: Memory
...

I0125 01:21:11.776336 125421742620672 k8s_base_runner.py:371] Deployment psm-grpc-client created
I0125 01:21:11.776494 125421742620672 k8s_base_runner.py:981] Waiting for deployment psm-grpc-client to initialize 1 pod(s)
I0125 01:21:12.832382 125421742620672 k8s_base_runner.py:991] Deployment psm-grpc-client initialized 1 pod(s): ['psm-grpc-client-597f5d557b-sz9dl']
I0125 01:21:12.832571 125421742620672 k8s_base_runner.py:1001] Waiting for pod psm-grpc-client-597f5d557b-sz9dl to start
I0125 01:21:14.901966 125421742620672 k8s_base_runner.py:1006] Pod psm-grpc-client-597f5d557b-sz9dl ready, IP: [{'ip': '10.60.0.69'}]
I0125 01:21:14.902240 125421742620672 k8s_base_runner.py:1049] Enabling log collection from pod psm-grpc-client-597f5d557b-sz9dl to url_map/test_app_logs/interop-psm-url-map-client-20250125-0121-aeg9y_psm-grpc-client-597f5d557b-sz9dl.log
I0125 01:21:14.902642 125421643368000 k8s_log_collector.py:71] [ns/interop-psm-url-map-client-20250125-0121-aeg9y] Starting log collection thread 125421643368000 for psm-grpc-client-597f5d557b-sz9dl
I0125 01:21:14.902938 125421742620672 k8s_base_runner.py:963] Waiting for deployment psm-grpc-client to report 1 available replica(s)
I0125 01:21:18.997624 125421742620672 k8s_base_runner.py:972] Deployment psm-grpc-client has 1 replicas available
[ RUN ] timeout_test.TestTimeoutNotExceeded.test_client_config
I0125 01:21:18.998104 125421742620672 client_app.py:294] [psm-grpc-client-597f5d557b-sz9dl] ADS: Waiting for active calls to xDS control plane to trafficdirector.googleapis.com:443
I0125 01:21:19.621226 125421742620672 client_app.py:322] [psm-grpc-client-597f5d557b-sz9dl] xDS control plane channel:
I0125 01:21:29.637294 125421742620672 client_app.py:322] [psm-grpc-client-597f5d557b-sz9dl] xDS control plane channel:
I0125 01:21:31.646629 125421742620672 client_app.py:333] [psm-grpc-client-597f5d557b-sz9dl] Detected active calls to xDS control plane trafficdirector.googleapis.com:443, channel:
I0125 01:21:31.646905 125421742620672 client_app.py:304] [psm-grpc-client-597f5d557b-sz9dl] ADS: Detected active calls to xDS control plane trafficdirector.googleapis.com:443
I0125 01:21:31.700306 125421742620672 xds_url_map_testcase.py:350] latest xDS config:
---
genericXdsConfigs:
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:21:29.168753Z'
name: URL_MAP/830293263384_interop-psm-url-map-url-map_29_timeout.test-timeout-not-exceeded:8848
typeUrl: type.googleapis.com/envoy.config.route.v3.RouteConfiguration
versionInfo: '1737768078776122998'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.route.v3.RouteConfiguration
- - name
- URL_MAP/830293263384_interop-psm-url-map-url-map_29_timeout.test-timeout-not-exceeded:8848
- - virtualHosts
- - domains:
- '*'
routes:
- match:
path: /grpc.testing.TestService/UnaryCall
name: URL_MAP/830293263384_interop-psm-url-map-url-map_29_timeout.test-timeout-not-exceeded:8848-route-0
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
maxStreamDuration:
grpcTimeoutHeaderMax: 3s
maxStreamDuration: 3s
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- match:
prefix: ''
name: URL_MAP/830293263384_interop-psm-url-map-url-map_29_timeout.test-timeout-not-exceeded:8848-route-1
route:
cluster: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
retryPolicy:
numRetries: 1
perTryTimeout: 30s
retryOn: gateway-error
timeout: 30s
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:21:29.156187Z'
name: xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/timeout.test-timeout-not-exceeded:8848
typeUrl: type.googleapis.com/envoy.config.listener.v3.Listener
versionInfo: '1737768078776122998'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.listener.v3.Listener
- - name
- xdstp://traffic-director-global.xds.googleapis.com/envoy.config.listener.v3.Listener/830293263384/default-vpc/timeout.test-timeout-not-exceeded:8848
- - apiListener
- apiListener: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
- - statPrefix
- trafficdirector
- - rds
- configSource:
ads: {}
resourceApiVersion: V3
routeConfigName: URL_MAP/830293263384_interop-psm-url-map-url-map_29_timeout.test-timeout-not-exceeded:8848
- - httpFilters
- - name: envoy.filters.http.fault
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.fault.v3.HTTPFault
- name: envoy.filters.http.router
typedConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
- - suppressEnvoyHeaders
- true
- - upgradeConfigs
- - upgradeType: websocket
- - normalizePath
- true
- - mergeSlashes
- true
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:21:29.134600Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.cluster.v3.Cluster
versionInfo: '1737768078776122998'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.cluster.v3.Cluster
- - name
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - type
- EDS
- - edsClusterConfig
- edsConfig:
ads: {}
initialFetchTimeout: 15s
resourceApiVersion: V3
- - connectTimeout
- 30s
- - circuitBreakers
- thresholds:
- maxConnections: 2147483647
maxPendingRequests: 2147483647
maxRequests: 2147483647
maxRetries: 2147483647
- - http2ProtocolOptions
- maxConcurrentStreams: 100
- - metadata
- filterMetadata:
com.google.trafficdirector:
backend_service_name: interop-psm-url-map-backend-service
backend_service_project_number: 830293263384.0
- - commonLbConfig
- healthyPanicThreshold:
value: 1.0
localityWeightedLbConfig: {}
- - altStatName
- /projects/830293263384/global/backendServices/interop-psm-url-map-backend-service
- - lrsServer
- resourceApiVersion: V3
self:
transportApiVersion: V3
- clientStatus: ACKED
lastUpdated: '2025-01-25T01:21:23.815993Z'
name: cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
typeUrl: type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
versionInfo: '1'
xdsConfig: !!python/object/apply:collections.OrderedDict
- - - '@type'
- type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment
- - clusterName
- cloud-internal-istio:cloud_mp_830293263384_4194901261267081995
- - endpoints
- - lbEndpoints:
- endpoint:
address:
socketAddress:
address: 10.60.3.2
portValue: 8080
healthStatus: HEALTHY
loadBalancingWeight: 1000000
locality:
subZone: us-central1-c:us-central1-c_5917678098994272449_neg
node:
clientFeatures:
- envoy.lb.does_not_support_overprovisioning
- xds.config.resource-in-sotw
cluster: cluster
id: projects/830293263384/networks/default-vpc/nodes/3e37e632-683e-4549-953a-19917fb481cd
locality:
zone: us-central1-c
metadata:
INSTANCE_IP: 10.60.0.69
TRAFFICDIRECTOR_GRPC_BOOTSTRAP_GENERATOR_SHA: ad35743ff01c0dc16a785e421591d7d52f3cdda4
TRAFFIC_DIRECTOR_CLIENT_ENVIRONMENT:
GCE-VM: gke-interop-test-psm-bas-default-pool-3b4250e7-o4i9
GCP-ZONE: us-central1-c
INSTANCE-IP: 10.60.0.69
userAgentName: gRPC Java
userAgentVersion: 1.70.1-SNAPSHOT
...

[ OK ] timeout_test.TestTimeoutNotExceeded.test_client_config
I0125 01:21:31.700658 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: timeout_test.TestTimeoutNotExceeded.test_client_config -----

[ RUN ] timeout_test.TestTimeoutNotExceeded.test_rpc_distribution
I0125 01:21:31.700954 125421742620672 grpc.py:75] [psm-grpc-client-597f5d557b-sz9dl:8079] >> RPC XdsUpdateClientConfigureService.Configure(request=ClientConfigureRequest({'types': ['UNARY_CALL']}), timeout=5, wait_for_ready=True)
I0125 01:21:33.710783 125421742620672 grpc.py:75] [psm-grpc-client-597f5d557b-sz9dl:8079] >> RPC LoadBalancerStatsService.GetClientStats(request=LoadBalancerStatsRequest({'numRpcs': 25, 'timeoutSec': 1200}), timeout=1200, wait_for_ready=True)
I0125 01:21:34.708152 125421742620672 xds_url_map_testcase.py:376] [psm-grpc-client-597f5d557b-sz9dl] << Received LoadBalancerStatsResponse:
num_failures: 0
rpcs_by_peer:
psm-grpc-server-7c7cf47f74-l26pq: 25
rpcs_by_method:
UnaryCall:
psm-grpc-server-7c7cf47f74-l26pq: 25

I0125 01:21:34.708386 125421742620672 grpc.py:75] [psm-grpc-client-597f5d557b-sz9dl:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 01:21:34.717793 125421742620672 xds_url_map_testcase.py:408] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-597f5d557b-sz9dl: before:
- method: EMPTY_CALL
rpcs_started: 386
result:
(0, OK): 386
- method: UNARY_CALL
rpcs_started: 461
result:
(0, OK): 461

I0125 01:21:44.728086 125421742620672 grpc.py:75] [psm-grpc-client-597f5d557b-sz9dl:8079] >> RPC LoadBalancerStatsService.GetClientAccumulatedStats(request=LoadBalancerAccumulatedStatsRequest({}), wait_for_ready=True, timeout=600)
I0125 01:21:44.738785 125421742620672 xds_url_map_testcase.py:418] Received LoadBalancerAccumulatedStatsResponse from test client psm-grpc-client-597f5d557b-sz9dl: after:
- method: EMPTY_CALL
rpcs_started: 386
result:
(0, OK): 386
- method: UNARY_CALL
rpcs_started: 712
result:
(0, OK): 711

[ OK ] timeout_test.TestTimeoutNotExceeded.test_rpc_distribution
I0125 01:21:44.739099 125421742620672 base_testcase.py:67] ----- PSM Test Case PASSED: timeout_test.TestTimeoutNotExceeded.test_rpc_distribution -----

I0125 01:21:44.739189 125421742620672 xds_url_map_testcase.py:261] ----- TestCase TestTimeoutNotExceeded teardown -----
I0125 01:21:44.811166 125421742620672 k8s_base_runner.py:892] Deleting deployment psm-grpc-client
I0125 01:21:54.885766 125421742620672 k8s_base_runner.py:907] Deployment psm-grpc-client deleted
I0125 01:21:54.886018 125421742620672 k8s_base_runner.py:943] Deleting namespace interop-psm-url-map-client-20250125-0121-aeg9y
I0125 01:22:24.980925 125421742620672 k8s_base_runner.py:960] Namespace interop-psm-url-map-client-20250125-0121-aeg9y deleted
I0125 01:22:24.981251 125421742620672 xds_url_map_testcase.py:290] ----- Test client logs -----
I0125 01:22:24.981413 125421742620672 k8s_base_runner.py:1171] GCP Logs Explorer link to psm-grpc-client-0uadl1o7:
https://console.cloud.google.com/logs/query;query=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22grpc-testing%22%0Aresource.labels.container_name%3D%22psm-grpc-client%22%0Aresource.labels.namespace_name%3D%22interop-psm-url-map-client-20250125-0121-aeg9y%22%0Alabels.%22k8s-pod%2Fdeployment_id%22%3D%22psm-grpc-client-0uadl1o7%22;timeRange=2025-01-25T01:21:11.709912Z%2F2025-01-25T01:22:24.981091Z;cursorTimestamp=2025-01-25T01:21:18.997831Z?project=grpc-testing
----------------------------------------------------------------------
Ran 60 tests in 2048.146s

OK (skipped=4)
+ [01:22:25 UTC] Cmd finished: python
+ [01:22:25 UTC] Finished url_map suite test: url_map

+ [01:22:25 UTC] Failed test suites: 0
+ [01:22:25 UTC] PSM Interop tests completed: url_map


[ID: 4508324] Command finished after 2101 secs, exit value: 0


Warning: Permanently added 'localhost' (ED25519) to the list of known hosts.
[17:22:26 PST] Collecting build artifacts from build VM
[17:22:28 PST] Kokoro builder finished