Distributed Tracing
New announcements from Dash: Incident Management, Continuous Profiler, and more! New announcements from Dash!

Distributed Tracing

By connecting your serverless traces to metrics, Datadog provides a context-rich picture of your application’s performance, allowing you to better troubleshoot performance issues given the distributed nature of serverless applications.

Choose your Tracing Library

Depending on your language and configuration, choose between setting up Datadog APM or AWS X-Ray for your tracing needs. Read this page to learn more about tracing with AWS X-Ray.

Distributed Tracing with Datadog APM

Datadog APM sends trace data to Datadog in real-time, allowing you to monitor traces with little to no latency in the Live Search view. Datadog APM also uses tail-based sampling to make better sampling decisions.

The Datadog Python, Node.js, and Ruby tracing libraries support distributed tracing for AWS Lambda, with more runtimes coming soon. The easiest way to add tracing to your application is with the Datadog Lambda Library, which includes the Datadog tracing library as a dependency.

Visualize your traces on the Serverless Homepage, in App Analytics, and on the Service Map.

Correlate Logs and Traces

The correlation between Datadog APM and Datadog Log Management is improved by the injection of trace IDs, span IDs, env, service, and version as attributes in your logs. With these fields, you can find the exact logs associated with a specific service and version or all logs correlated to an observed trace.

Live Search

The APM Live Search gives you the ability to search all ingested spans using any tag in real-time for the past 15 minutes. It displays spans as soon as they are sent by the Datadog agent and before they are indexed by Datadog.

Enable Datadog APM

The Datadog Python, Node.js, and Ruby tracing libraries support distributed tracing for AWS Lambda, with more runtimes coming soon. To enable tracing on your functions, follow the installation instructions.

To enable Datadog APM without enabling logging for your functions, ensure the DdForwarderLog environment variable is set to false on your Datadog Forwarder.