Knative: Operator’s Handbook

Debugging Envoy proxy

If you're using Istio as your gateway, you should first look at VirtualService objects. These can show if the hosts are registered to the gateway correctly.

$ kubectl get virtualservice -o=yaml

However, sometimes, the Envoy inside the gateway container is not properly configured (likely due to a bug). You can dump Envoy configuration to debug this further

# find istio ingress gateway pod
$ kubectl get pods -n istio-system -l app=istio-ingressgateway

(Paste the result here: istio-ingressgateway-57449dd8bc-tw6hf.)

# enable debugging on envoy
$ kubectl exec --namespace=istio-system \
    istio-ingressgateway-57449dd8bc-tw6hf \
    -c istio-proxy -- curl -X POST \
    http://localhost:15000/logging\?level\=debug

Then, use istioctl tool to dump route configuration (this will show the output from the /config_dump admin endpoint on Envoy):

$ istioctl proxy-config routes -n istio-system -o=json \
    istio-ingressgateway-57449dd8bc-tw6hf