Instrumenting a tech stack for distributed tracing is a complicated process that often takes weeks. For large fleets running services written in multiple languages, the timeline could be months. Every service needs a tracing library added, configured, and redeployed, and that work has to fit into each team’s release schedule.
Datadog’s Single Step Instrumentation (SSI) cuts the time it takes to instrument your applications to send traces to Datadog APM down to minutes. Because of this time savings, we recommend SSI as the default instrumentation option. However, there are still some cases where manual and custom instrumentation may make sense, if SSI can’t reach or see deep enough into a service.
In this post, we’ll cover the distinction between auto-instrumentation and SSI and explain why the latter is our default recommendation for instrumenting your applications to send traces to Datadog APM. Then, we’ll discuss some less common scenarios when manual instrumentation still makes sense, when to add custom instrumentation, and how to determine if your situation fits one of these categories.
Auto-instrumentation vs. SSI
While the terms auto-instrumentation and SSI sometimes get used interchangeably, they describe different things. The rest of this guide will be easier to follow once we distinguish between them.









