Davis isn’t magic, it’s a highly sophisticated event correlation engine that uses a deep understanding of your application topology and runtime behavior to pinpoint the exact service or process causing an incident.

Let’s see it in action. Imagine a user reports slow page load times on your e-commerce site. Davis will start by analyzing the user’s session, tracing every network hop, API call, and database query involved in rendering that page.

Here’s a simplified trace of what Davis might see:

User Browser -> CDN (Fast) -> Web Server (Slow) -> Application Service (Slow) -> Database (Fast)

Davis flags both the "Web Server" and the "Application Service" as potentially slow. But it doesn’t stop there. It looks at the dependencies.

The "Web Server" depends on the "Application Service." If the "Application Service" is slow, the "Web Server" will appear slow because it’s waiting for a response. Davis understands this causal relationship. It then dives deeper into the metrics of the "Application Service."

Perhaps the "Application Service" is experiencing a spike in garbage collection pauses, or a particular database query has become significantly slower. Davis correlates this with the observed slowness in the user’s session.

The core problem Davis solves is noise reduction. In any complex system, thousands of metrics might fluctuate simultaneously. Davis filters out the background noise and highlights the actual driver of the user-facing problem. It doesn’t just tell you that something is slow; it tells you what is slow and why.

The mental model for Davis is a directed acyclic graph (DAG) of your entire distributed system. Nodes represent services, processes, or infrastructure components, and edges represent dependencies and communication flows. When an anomaly is detected, Davis traverses this graph, evaluating the health and performance of each node and edge, looking for the "root" of the problem that explains the observed symptoms. It considers not just direct metric deviations but also the impact of one component’s degradation on its dependents.

Most people think Davis just "looks at metrics." But Davis also analyzes code-level execution paths and configuration changes. If a deployment introduced a performance regression in a specific function, Davis can correlate that deployment event with the subsequent performance degradation and pinpoint that function as the root cause, even if overall service-level metrics look superficially healthy. It understands that a minor slowdown in a critical path can have a disproportionate impact on the end-user experience.

The next step is understanding how to configure Davis to understand custom dependencies and business-critical transactions.

Want structured learning?

Take the full Dynatrace course →