APM agents collect details about external calls made from instrumented services. Sometimes, these external calls resolve into a downstream service that’s instrumented — in these cases, you can utilize distributed tracing to drill down into problematic downstream services. Other times, though, it’s not possible to instrument a downstream dependency — like with a database or third-party service. Dependencies gives you a window into these uninstrumented, downstream dependencies.

Dependencies view in the APM app in Kibana

Many application issues are caused by slow or unresponsive downstream dependencies. And because a single, slow dependency can significantly impact the end-user experience, it’s important to be able to quickly identify these problems and determine the root cause.

Select a dependency to see detailed latency, throughput, and failed transaction rate metrics.

Dependencies drilldown view in the APM app in Kibana

When viewing a dependency, consider your pattern of usage with that dependency. If your usage pattern hasn’t increased or decreased, but the experience has been negatively effected — either with an increase in latency or errors, there’s likely a problem with the dependency that needs to be addressed.

If your usage pattern has changed, the dependency view can quickly show you whether that pattern change exists in all upstream services, or just a subset of your services. You might then start digging into traces coming from impacted services to determine why that pattern change has occurred.