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