Linkerd

Missing Service Profiles Hiding Route-Level Issues

warning
configurationUpdated Feb 21, 2024

Without service profiles, Linkerd cannot provide per-route metrics, making it impossible to identify which specific endpoints are failing or slow. All traffic gets aggregated into a [DEFAULT] catch-all route.

How to detect:

Check if 'linkerd viz routes' shows all traffic under [DEFAULT] route with 0% for other routes. Verify service profiles exist with 'kubectl get serviceprofiles'. Look for generic aggregated metrics when route-specific patterns are expected.

Recommended action:

Create service profiles using 'linkerd profile' command or manually define route regex patterns. Ensure route regexes match actual :path values observed in traffic. Test patterns using 'linkerd viz tap' with -o wide to see :path and rt_route labels. Order routes by specificity (most specific first).