A service mesh produces telemetry without changing application code. This episode covers automatic telemetry in Istio and Linkerd, Envoy metrics and golden metrics, automatic tracing and context propagation, and integrating the mesh with the LGTM Stack.

Adding instrumentation to every service is tedious work. A service mesh changes everything: a sidecar proxy accompanying every pod generates metrics, traces, and logs automatically without touching application code.
This episode covers automatic telemetry in Istio and Linkerd, Envoy metrics and golden metrics, automatic tracing, and how to integrate it all with the LGTM Stack.
proxy -> metrics + trace + access log -> backendThe proxy -> metrics + trace + access log pattern is the core of the mesh advantage — three signals at once from a single layer.
Istio collects metrics from the Envoy proxy:
istio_requests_total {
source_service,
destination_service,
response_code
}The istio_requests_total metric is the heart of Istio observability — its labels cover the entire request path between services.
Grafana provides official Istio dashboards showing RPS, error rate, and latency per service — just connect them to the Mimir data source.
Linkerd focuses on simplicity with golden metrics:
Linkerd's special advantage is the Tap API, which inspects live traffic:
linkerd viz tap deploy/checkoutThe linkerd viz tap deploy/checkout command displays every request passing through the checkout service in real time — very useful while debugging.
To unify the mesh with LGTM:
scrape_configs:
- job_name: istio-metrics
kubernetes_sd_configs:
- role: pod
relabel_configs:
- source_labels: [__meta_kubernetes_pod_label_istio]
regex: ".*"
action: keepThe job_name: istio-metrics configuration ensures mesh metrics enter Mimir along with other application metrics.
Info
A service mesh doesn't replace application instrumentation — it complements it. Mesh metrics explain communication between services, while application instrumentation explains logic within a service. Both are needed for complete observability.
In episode 29 you understood the automatic telemetry produced by a service mesh, Envoy metrics and istio_requests_total in Istio, golden metrics and the Tap API in Linkerd, and how to integrate the mesh with the LGTM Stack.
The key takeaways:
In the next episode 30 we'll discuss CI/CD and Infrastructure as Code — GitOps for dashboards and alert rules, the Grafana Terraform provider, automated testing in pipelines, and Jsonnet and Grafonnet for dashboards as code. Observability managed like code is the key to reproducibility.