Large-Scale Automated Dependency Analysis Across Uber's Service Mesh
Sep 15, 2026

Summary
This post details the development of a large-scale automated dependency analysis system across Uber's service mesh. It introduces the concepts of fail-close and fail-open dependencies and explains how these are identified by correlating outbound failures with inbound requests. The system leverages yarpc middleware and unique request IDs to link outbound calls to their originating inbound requests, enabling the classification of dependencies. The post highlights the challenges of using distributed tracing at scale due to sampling rates and proposes a metric-based approach using on-host proxies (Muttley) and yarpc middleware to observe every failure and establish dependency correlations.