Istio latency breakdown between different components


When I invoke a service endpoint, is it possible to get a break down of the latencies at different Istio components such as :

Istio Gateway -> Virtual Service -> Destination Rules -> Mixer -> Pilot -> Pod

I know Kiali provided traceability, but if there are metrics available from each of these components for a given service invocation, we would like to plot some graphs on Grafana.

@douglas-reid any pointers ?

VirtualService and DestinationRule are configuration components that result in config pushed to the proxies. They are not components that exist with in the request path. As a result, they do not have associated latencies.

Pilot is also not on the request path, and so will not have an associated latency.

Gateway --> Pod is essentially all that you will see (unless you have enabled Mixer-based policy checks).

For individual requests, you will want to enable tracing and look at individual distributed traces to see the per-component latency breakdown.

In aggregate, the metrics will show the latency (based on selection by source and destination). These should already be show in the service/workload dashboards provided in the Grafana addon.

Does that make sense?

Thanks a lot @douglas-reid, this make sense.