github.com/projectcontour/contour@v1.28.2/site/content/docs/v1.18.1/troubleshooting/contour-xds-resources.md (about) 1 # Interrogate Contour's xDS Resources 2 3 Sometimes it's helpful to be able to interrogate Contour to find out exactly what [xDS][1] resource data it is sending to Envoy. 4 Contour ships with a `contour cli` subcommand which can be used for this purpose. 5 6 Because Contour secures its communications with Envoy using Secrets in the cluster, the easiest way is to run `contour cli` commands _inside_ the pod. 7 Do this is via `kubectl exec`: 8 9 ```bash 10 # Get one of the pods that matches the examples/daemonset 11 $ CONTOUR_POD=$(kubectl -n projectcontour get pod -l app=contour -o jsonpath='{.items[0].metadata.name}') 12 # Do the port forward to that pod 13 $ kubectl -n projectcontour exec $CONTOUR_POD -c contour -- contour cli lds --cafile=/certs/ca.crt --cert-file=/certs/tls.crt --key-file=/certs/tls.key 14 ``` 15 16 Which will stream changes to the LDS api endpoint to your terminal. 17 Replace `contour cli lds` with `contour cli rds` for route resources, `contour cli cds` for cluster resources, and `contour cli eds` for endpoints. 18 19 [1]: https://www.envoyproxy.io/docs/envoy/latest/api-docs/xds_protocol