From 1ff85d8728d605c3edd56d74a454853754b42034 Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Wed, 22 Jul 2026 17:21:43 -0400 Subject: [PATCH 01/19] Document Code Intelligence-powered Code Origin Adds coverage of the new static-analysis-based Code Origin attribution path (via Source Code Integration), which requires no SDK flag and is the primary source of Code Origin data for Go and for additional Python/Node.js frameworks not yet covered by tracer instrumentation. Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 32 ++++++++++++++++++++---- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 849f09f367e..cbcaf1ff546 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -36,13 +36,19 @@ Code Origin captures the exact locations in your codebase where APM spans are cr In Trace Explorer, select a span from an enabled service to see Code Origin details on the Overview tab: {{< img src="tracing/code_origin/code_origin_details_spotlight.png" alt="Code Origin Details" style="width:100%;">}} +Code Origin data comes from one of two sources: + +- **Tracer-instrumented Code Origin**: your tracing library embeds the code location directly into the span when [explicitly enabled](#enable-code-origin) and your service meets the [compatibility requirements](#compatibility-requirements). +- **Code Intelligence-powered Code Origin**: Datadog determines code locations automatically using static analysis of your repository through [Source Code Integration][7]. This method requires no SDK flag or minimum tracer version, and is the primary source of Code Origin data for languages and frameworks not yet covered by tracer instrumentation, such as Go. + +Both sources populate the same Code Origin section in Trace Explorer and power the same [IDE integration](#in-your-ide) and [Live Debugger](#in-the-trace-explorer) workflows. ## Getting started ### Prerequisites - [Datadog APM][6] is configured to capture spans. -- [Source Code Integration][7] is enabled (required for code previews). -- Your service meets the [compatibility requirements](#compatibility-requirements). +- [Source Code Integration][7] is enabled (required for code previews, and for Code Intelligence-powered Code Origin). +- For tracer-instrumented Code Origin, your service meets the [compatibility requirements](#compatibility-requirements). ### Compatibility requirements @@ -64,6 +70,8 @@ In Trace Explorer, select a span from an enabled service to see Code Origin deta |---|---| | 2.15.0+ | Django, Flask, Starlette, and derivatives | +**Code Intelligence-powered:** FastAPI and aiohttp are also supported through [Code Intelligence-powered Code Origin](#overview) when Source Code Integration is enabled, with no SDK flag required. + {{% /tab %}} {{% tab "Node.js" %}} @@ -75,6 +83,8 @@ In Trace Explorer, select a span from an enabled service to see Code Origin deta **Note:** NestJS is not supported, even though the underlying framework is either Express or Fastify. +**Code Intelligence-powered:** Next.js is also supported through [Code Intelligence-powered Code Origin](#overview) when Source Code Integration is enabled, with no SDK flag required. + {{% /tab %}} {{% tab ".NET" %}} @@ -93,16 +103,28 @@ In Trace Explorer, select a span from an enabled service to see Code Origin deta {{% /tab %}} +{{% tab "Go" %}} + +Go services use [Code Intelligence-powered Code Origin](#overview) exclusively — there is no SDK flag or minimum tracer version requirement. + +| Requirement | Frameworks | +|---|---| +| [Source Code Integration][7] enabled | Custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, Kafka consumers (sarama), OpenTelemetry, OpenTracing | + +{{% /tab %}} + {{% /tabs %}} ### Enable Code Origin -Run your service with the following environment variable: +Tracer-instrumented Code Origin requires setting the following environment variable on your service: ```shell export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true ``` +Code Intelligence-powered Code Origin doesn't require this flag. It's enabled automatically for compatible languages and frameworks once [Source Code Integration][7] is configured for your service. +
For transpiled Node.js applications (for example, TypeScript), make sure to generate and publish source maps with the deployed application, run Node.js with the --enable-source-maps flag, and use v5.59.0 or newer of the Node.js tracer. Otherwise, code previews do not work. See the Node.js Source Code Integration documentation for more details.
@@ -144,8 +166,8 @@ export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true ### Code Origin section is missing -- Verify Code Origin is [enabled](#enable-code-origin) in your SDK configuration. -- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). +- For tracer-instrumented Code Origin, verify Code Origin is [enabled](#enable-code-origin) in your SDK configuration and that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). +- For Code Intelligence-powered Code Origin, confirm [Source Code Integration][7] is properly configured and that your service's language and framework are supported (see [compatibility requirements](#compatibility-requirements)). - For most services, Code Origin data is captured for [service entry spans][12] only. You can filter to "Service Entry Spans" in the [APM Trace Explorer][1]. {{< img src="tracing/code_origin/code_origin_service_entry_spans_filter.png" alt="Code Origin - Search for Service Entry Spans" style="width:100%;">}} From bfcdfcdb02d38d3fe484dd2a66ef1fd9532e44d0 Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 11:02:14 -0400 Subject: [PATCH 02/19] Rename to Code Origin powered by Source Code Integration Use product-facing terminology (Source Code Integration, with GitHub as the example provider) instead of the internal "Code Intelligence" team name, matching existing docs conventions (error_tracking, flaky_management, api_endpoints). Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index cbcaf1ff546..1535f1988d9 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -39,7 +39,7 @@ In Trace Explorer, select a span from an enabled service to see Code Origin deta Code Origin data comes from one of two sources: - **Tracer-instrumented Code Origin**: your tracing library embeds the code location directly into the span when [explicitly enabled](#enable-code-origin) and your service meets the [compatibility requirements](#compatibility-requirements). -- **Code Intelligence-powered Code Origin**: Datadog determines code locations automatically using static analysis of your repository through [Source Code Integration][7]. This method requires no SDK flag or minimum tracer version, and is the primary source of Code Origin data for languages and frameworks not yet covered by tracer instrumentation, such as Go. +- **Code Origin powered by Source Code Integration**: Datadog determines code locations automatically using static analysis of your repository through [Source Code Integration][7] (for example, with GitHub). This method requires no SDK flag or minimum tracer version, and is the primary source of Code Origin data for languages and frameworks not yet covered by tracer instrumentation, such as Go. Both sources populate the same Code Origin section in Trace Explorer and power the same [IDE integration](#in-your-ide) and [Live Debugger](#in-the-trace-explorer) workflows. @@ -47,7 +47,7 @@ Both sources populate the same Code Origin section in Trace Explorer and power t ### Prerequisites - [Datadog APM][6] is configured to capture spans. -- [Source Code Integration][7] is enabled (required for code previews, and for Code Intelligence-powered Code Origin). +- [Source Code Integration][7] is enabled (required for code previews, and for Code Origin powered by Source Code Integration). - For tracer-instrumented Code Origin, your service meets the [compatibility requirements](#compatibility-requirements). ### Compatibility requirements @@ -70,7 +70,7 @@ Both sources populate the same Code Origin section in Trace Explorer and power t |---|---| | 2.15.0+ | Django, Flask, Starlette, and derivatives | -**Code Intelligence-powered:** FastAPI and aiohttp are also supported through [Code Intelligence-powered Code Origin](#overview) when Source Code Integration is enabled, with no SDK flag required. +**Powered by Source Code Integration:** FastAPI and aiohttp are also supported through [Code Origin powered by Source Code Integration](#overview), with no SDK flag required. {{% /tab %}} @@ -83,7 +83,7 @@ Both sources populate the same Code Origin section in Trace Explorer and power t **Note:** NestJS is not supported, even though the underlying framework is either Express or Fastify. -**Code Intelligence-powered:** Next.js is also supported through [Code Intelligence-powered Code Origin](#overview) when Source Code Integration is enabled, with no SDK flag required. +**Powered by Source Code Integration:** Next.js is also supported through [Code Origin powered by Source Code Integration](#overview), with no SDK flag required. {{% /tab %}} @@ -105,7 +105,7 @@ Both sources populate the same Code Origin section in Trace Explorer and power t {{% tab "Go" %}} -Go services use [Code Intelligence-powered Code Origin](#overview) exclusively — there is no SDK flag or minimum tracer version requirement. +Go services use [Code Origin powered by Source Code Integration](#overview) exclusively — there is no SDK flag or minimum tracer version requirement. | Requirement | Frameworks | |---|---| @@ -123,7 +123,7 @@ Tracer-instrumented Code Origin requires setting the following environment varia export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true ``` -Code Intelligence-powered Code Origin doesn't require this flag. It's enabled automatically for compatible languages and frameworks once [Source Code Integration][7] is configured for your service. +Code Origin powered by Source Code Integration doesn't require this flag. It's enabled automatically for compatible languages and frameworks once [Source Code Integration][7] is configured for your service (for example, with GitHub, GitLab, or Azure DevOps).
For transpiled Node.js applications (for example, TypeScript), make sure to generate and publish source maps with the deployed application, run Node.js with the --enable-source-maps flag, and use v5.59.0 or newer of the Node.js tracer. Otherwise, code previews do not work. See the Node.js Source Code Integration documentation for more details. @@ -167,7 +167,7 @@ Code Intelligence-powered Code Origin doesn't require this flag. It's enabled au ### Code Origin section is missing - For tracer-instrumented Code Origin, verify Code Origin is [enabled](#enable-code-origin) in your SDK configuration and that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). -- For Code Intelligence-powered Code Origin, confirm [Source Code Integration][7] is properly configured and that your service's language and framework are supported (see [compatibility requirements](#compatibility-requirements)). +- For Code Origin powered by Source Code Integration, confirm [Source Code Integration][7] is properly configured and that your service's language and framework are supported (see [compatibility requirements](#compatibility-requirements)). - For most services, Code Origin data is captured for [service entry spans][12] only. You can filter to "Service Entry Spans" in the [APM Trace Explorer][1]. {{< img src="tracing/code_origin/code_origin_service_entry_spans_filter.png" alt="Code Origin - Search for Service Entry Spans" style="width:100%;">}} From 6f1333f89e62a13b7ee0c4f7a95a78cb35195bef Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 11:18:59 -0400 Subject: [PATCH 03/19] Consolidate Source Code Integration pathway into an Alternative Setup section Replaces the scattered mentions across Overview, Prerequisites, compatibility tabs, Enable Code Origin, and Troubleshooting with a single Alternative Setup section, linked from Getting Started and Troubleshooting for readers whose service isn't covered by the default tracer-instrumented setup. Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 47 ++++++++++-------------- 1 file changed, 19 insertions(+), 28 deletions(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 1535f1988d9..161840e5e45 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -36,19 +36,14 @@ Code Origin captures the exact locations in your codebase where APM spans are cr In Trace Explorer, select a span from an enabled service to see Code Origin details on the Overview tab: {{< img src="tracing/code_origin/code_origin_details_spotlight.png" alt="Code Origin Details" style="width:100%;">}} -Code Origin data comes from one of two sources: - -- **Tracer-instrumented Code Origin**: your tracing library embeds the code location directly into the span when [explicitly enabled](#enable-code-origin) and your service meets the [compatibility requirements](#compatibility-requirements). -- **Code Origin powered by Source Code Integration**: Datadog determines code locations automatically using static analysis of your repository through [Source Code Integration][7] (for example, with GitHub). This method requires no SDK flag or minimum tracer version, and is the primary source of Code Origin data for languages and frameworks not yet covered by tracer instrumentation, such as Go. - -Both sources populate the same Code Origin section in Trace Explorer and power the same [IDE integration](#in-your-ide) and [Live Debugger](#in-the-trace-explorer) workflows. - ## Getting started ### Prerequisites - [Datadog APM][6] is configured to capture spans. -- [Source Code Integration][7] is enabled (required for code previews, and for Code Origin powered by Source Code Integration). -- For tracer-instrumented Code Origin, your service meets the [compatibility requirements](#compatibility-requirements). +- [Source Code Integration][7] is enabled (required for code previews). +- Your service meets the [compatibility requirements](#compatibility-requirements). + +If your service's language or framework isn't listed below, see [Alternative Setup](#alternative-setup) for another way to get Code Origin data. ### Compatibility requirements @@ -70,8 +65,6 @@ Both sources populate the same Code Origin section in Trace Explorer and power t |---|---| | 2.15.0+ | Django, Flask, Starlette, and derivatives | -**Powered by Source Code Integration:** FastAPI and aiohttp are also supported through [Code Origin powered by Source Code Integration](#overview), with no SDK flag required. - {{% /tab %}} {{% tab "Node.js" %}} @@ -83,8 +76,6 @@ Both sources populate the same Code Origin section in Trace Explorer and power t **Note:** NestJS is not supported, even though the underlying framework is either Express or Fastify. -**Powered by Source Code Integration:** Next.js is also supported through [Code Origin powered by Source Code Integration](#overview), with no SDK flag required. - {{% /tab %}} {{% tab ".NET" %}} @@ -103,28 +94,16 @@ Both sources populate the same Code Origin section in Trace Explorer and power t {{% /tab %}} -{{% tab "Go" %}} - -Go services use [Code Origin powered by Source Code Integration](#overview) exclusively — there is no SDK flag or minimum tracer version requirement. - -| Requirement | Frameworks | -|---|---| -| [Source Code Integration][7] enabled | Custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, Kafka consumers (sarama), OpenTelemetry, OpenTracing | - -{{% /tab %}} - {{% /tabs %}} ### Enable Code Origin -Tracer-instrumented Code Origin requires setting the following environment variable on your service: +Run your service with the following environment variable: ```shell export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true ``` -Code Origin powered by Source Code Integration doesn't require this flag. It's enabled automatically for compatible languages and frameworks once [Source Code Integration][7] is configured for your service (for example, with GitHub, GitLab, or Azure DevOps). -
For transpiled Node.js applications (for example, TypeScript), make sure to generate and publish source maps with the deployed application, run Node.js with the --enable-source-maps flag, and use v5.59.0 or newer of the Node.js tracer. Otherwise, code previews do not work. See the Node.js Source Code Integration documentation for more details.
@@ -166,8 +145,8 @@ Code Origin powered by Source Code Integration doesn't require this flag. It's e ### Code Origin section is missing -- For tracer-instrumented Code Origin, verify Code Origin is [enabled](#enable-code-origin) in your SDK configuration and that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). -- For Code Origin powered by Source Code Integration, confirm [Source Code Integration][7] is properly configured and that your service's language and framework are supported (see [compatibility requirements](#compatibility-requirements)). +- Verify Code Origin is [enabled](#enable-code-origin) in your SDK configuration. +- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). If it doesn't, see [Alternative Setup](#alternative-setup). - For most services, Code Origin data is captured for [service entry spans][12] only. You can filter to "Service Entry Spans" in the [APM Trace Explorer][1]. {{< img src="tracing/code_origin/code_origin_service_entry_spans_filter.png" alt="Code Origin - Search for Service Entry Spans" style="width:100%;">}} @@ -178,6 +157,18 @@ Code Origin powered by Source Code Integration doesn't require this flag. It's e - For transpiled Node.js applications (for example, TypeScript), make sure to generate and publish source maps with the deployed application, run Node.js with the [`--enable-source-maps`][10] flag, and use v5.59.0 or newer of the Node.js tracer. Otherwise, code previews will not work. See the Node.js [Source Code Integration][9] documentation for more details. - Code Origin is designed to reference user code only, but in some cases, third-party code references may slip through. You can report these cases to [Datadog support][13] and help improve these references. +## Alternative Setup + +For services and frameworks not covered by the [compatibility requirements](#compatibility-requirements) above, Datadog can determine code locations using static analysis of your repository through [Source Code Integration][7] (for example, with GitHub, GitLab, or Azure DevOps) instead of tracer instrumentation. + +Key differences from the setup described above: + +- No `DD_CODE_ORIGIN_FOR_SPANS_ENABLED` flag or minimum tracer version is required — only [Source Code Integration][7] needs to be configured. +- It's currently the only way to get Code Origin data for **Go** services (custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, Kafka consumers, OpenTelemetry, and OpenTracing). +- It also extends coverage for **Python** (FastAPI, aiohttp) and **Node.js** (Next.js) beyond the frameworks listed in the compatibility table. + +Code Origin data from this method appears in the same Code Origin section of the Trace Explorer and powers the same [IDE integration](#in-your-ide) and [Live Debugger](#in-the-trace-explorer) workflows as tracer-instrumented Code Origin. + ## Further Reading {{< partial name="whats-next/whats-next.html" >}} From 2714eb705e808fef2e170e93c50ca6bf0f0ccacd Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 11:33:56 -0400 Subject: [PATCH 04/19] Reframe SCI section as baseline coverage, not an alternative setup Source Code Integration is already a required prerequisite for Code Origin (used for code previews), so it isn't a separate setup path. Reframe the section to describe what SCI alone already covers automatically, and what enabling the SDK flag adds on top. Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 161840e5e45..04fe4444bca 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -43,7 +43,7 @@ In Trace Explorer, select a span from an enabled service to see Code Origin deta - [Source Code Integration][7] is enabled (required for code previews). - Your service meets the [compatibility requirements](#compatibility-requirements). -If your service's language or framework isn't listed below, see [Alternative Setup](#alternative-setup) for another way to get Code Origin data. +Source Code Integration alone already gives you some Code Origin coverage automatically, even if your service doesn't meet the compatibility requirements below — see [Code Origin coverage without the SDK flag](#code-origin-coverage-without-the-sdk-flag). Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. ### Compatibility requirements @@ -146,7 +146,7 @@ export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true ### Code Origin section is missing - Verify Code Origin is [enabled](#enable-code-origin) in your SDK configuration. -- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). If it doesn't, see [Alternative Setup](#alternative-setup). +- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). If it doesn't, you may still get some Code Origin data automatically — see [Code Origin coverage without the SDK flag](#code-origin-coverage-without-the-sdk-flag). - For most services, Code Origin data is captured for [service entry spans][12] only. You can filter to "Service Entry Spans" in the [APM Trace Explorer][1]. {{< img src="tracing/code_origin/code_origin_service_entry_spans_filter.png" alt="Code Origin - Search for Service Entry Spans" style="width:100%;">}} @@ -157,17 +157,14 @@ export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true - For transpiled Node.js applications (for example, TypeScript), make sure to generate and publish source maps with the deployed application, run Node.js with the [`--enable-source-maps`][10] flag, and use v5.59.0 or newer of the Node.js tracer. Otherwise, code previews will not work. See the Node.js [Source Code Integration][9] documentation for more details. - Code Origin is designed to reference user code only, but in some cases, third-party code references may slip through. You can report these cases to [Datadog support][13] and help improve these references. -## Alternative Setup +## Code Origin coverage without the SDK flag -For services and frameworks not covered by the [compatibility requirements](#compatibility-requirements) above, Datadog can determine code locations using static analysis of your repository through [Source Code Integration][7] (for example, with GitHub, GitLab, or Azure DevOps) instead of tracer instrumentation. +[Source Code Integration][7] (for example, with GitHub, GitLab, or Azure DevOps) is already required as a [prerequisite](#prerequisites). On its own, it uses static analysis of your repository to automatically determine code locations for some services, without setting the `DD_CODE_ORIGIN_FOR_SPANS_ENABLED` flag or meeting a minimum tracer version: -Key differences from the setup described above: - -- No `DD_CODE_ORIGIN_FOR_SPANS_ENABLED` flag or minimum tracer version is required — only [Source Code Integration][7] needs to be configured. - It's currently the only way to get Code Origin data for **Go** services (custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, Kafka consumers, OpenTelemetry, and OpenTracing). -- It also extends coverage for **Python** (FastAPI, aiohttp) and **Node.js** (Next.js) beyond the frameworks listed in the compatibility table. +- It extends coverage for **Python** (FastAPI, aiohttp) and **Node.js** (Next.js) beyond the frameworks listed in the [compatibility requirements](#compatibility-requirements) table. -Code Origin data from this method appears in the same Code Origin section of the Trace Explorer and powers the same [IDE integration](#in-your-ide) and [Live Debugger](#in-the-trace-explorer) workflows as tracer-instrumented Code Origin. +To get full tracer-instrumented coverage for the languages and frameworks listed in [compatibility requirements](#compatibility-requirements), also [enable Code Origin](#enable-code-origin) in your SDK. Data from both methods appears in the same Code Origin section of the Trace Explorer and powers the same [IDE integration](#in-your-ide) and [Live Debugger](#in-the-trace-explorer) workflows. ## Further Reading From 5b4d60d1141c531e9e592e0f592a786d52dd5e94 Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 11:39:49 -0400 Subject: [PATCH 05/19] Drop the "required for code previews" qualifier Source Code Integration is a general prerequisite for Code Origin, not just for code previews. Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 04fe4444bca..68045887324 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -40,7 +40,7 @@ In Trace Explorer, select a span from an enabled service to see Code Origin deta ### Prerequisites - [Datadog APM][6] is configured to capture spans. -- [Source Code Integration][7] is enabled (required for code previews). +- [Source Code Integration][7] is enabled. - Your service meets the [compatibility requirements](#compatibility-requirements). Source Code Integration alone already gives you some Code Origin coverage automatically, even if your service doesn't meet the compatibility requirements below — see [Code Origin coverage without the SDK flag](#code-origin-coverage-without-the-sdk-flag). Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. From 938c99b21d143795ec244da9c5890268c8b754e2 Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 11:41:41 -0400 Subject: [PATCH 06/19] Rename section to "Code Origin coverage via Source Code Integration" Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 68045887324..83a6567288f 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -43,7 +43,7 @@ In Trace Explorer, select a span from an enabled service to see Code Origin deta - [Source Code Integration][7] is enabled. - Your service meets the [compatibility requirements](#compatibility-requirements). -Source Code Integration alone already gives you some Code Origin coverage automatically, even if your service doesn't meet the compatibility requirements below — see [Code Origin coverage without the SDK flag](#code-origin-coverage-without-the-sdk-flag). Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. +Source Code Integration alone already gives you some Code Origin coverage automatically, even if your service doesn't meet the compatibility requirements below — see [Code Origin coverage via Source Code Integration](#code-origin-coverage-via-source-code-integration). Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. ### Compatibility requirements @@ -146,7 +146,7 @@ export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true ### Code Origin section is missing - Verify Code Origin is [enabled](#enable-code-origin) in your SDK configuration. -- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). If it doesn't, you may still get some Code Origin data automatically — see [Code Origin coverage without the SDK flag](#code-origin-coverage-without-the-sdk-flag). +- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). If it doesn't, you may still get some Code Origin data automatically — see [Code Origin coverage via Source Code Integration](#code-origin-coverage-via-source-code-integration). - For most services, Code Origin data is captured for [service entry spans][12] only. You can filter to "Service Entry Spans" in the [APM Trace Explorer][1]. {{< img src="tracing/code_origin/code_origin_service_entry_spans_filter.png" alt="Code Origin - Search for Service Entry Spans" style="width:100%;">}} @@ -157,7 +157,7 @@ export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true - For transpiled Node.js applications (for example, TypeScript), make sure to generate and publish source maps with the deployed application, run Node.js with the [`--enable-source-maps`][10] flag, and use v5.59.0 or newer of the Node.js tracer. Otherwise, code previews will not work. See the Node.js [Source Code Integration][9] documentation for more details. - Code Origin is designed to reference user code only, but in some cases, third-party code references may slip through. You can report these cases to [Datadog support][13] and help improve these references. -## Code Origin coverage without the SDK flag +## Code Origin coverage via Source Code Integration [Source Code Integration][7] (for example, with GitHub, GitLab, or Azure DevOps) is already required as a [prerequisite](#prerequisites). On its own, it uses static analysis of your repository to automatically determine code locations for some services, without setting the `DD_CODE_ORIGIN_FOR_SPANS_ENABLED` flag or meeting a minimum tracer version: From 181f5014f0b60f8e516301a2d15012e7147fb25c Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 11:44:18 -0400 Subject: [PATCH 07/19] Simplify SCI coverage section, drop per-language bullet list Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 83a6567288f..a0e71277cb5 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -159,10 +159,7 @@ export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true ## Code Origin coverage via Source Code Integration -[Source Code Integration][7] (for example, with GitHub, GitLab, or Azure DevOps) is already required as a [prerequisite](#prerequisites). On its own, it uses static analysis of your repository to automatically determine code locations for some services, without setting the `DD_CODE_ORIGIN_FOR_SPANS_ENABLED` flag or meeting a minimum tracer version: - -- It's currently the only way to get Code Origin data for **Go** services (custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, Kafka consumers, OpenTelemetry, and OpenTracing). -- It extends coverage for **Python** (FastAPI, aiohttp) and **Node.js** (Next.js) beyond the frameworks listed in the [compatibility requirements](#compatibility-requirements) table. +[Source Code Integration][7] (for example, with GitHub, GitLab, or Azure DevOps) is already required as a [prerequisite](#prerequisites). On its own, it uses static analysis of your repository to automatically determine code locations for some languages and frameworks, without meeting the other requirements. To get full tracer-instrumented coverage for the languages and frameworks listed in [compatibility requirements](#compatibility-requirements), also [enable Code Origin](#enable-code-origin) in your SDK. Data from both methods appears in the same Code Origin section of the Trace Explorer and powers the same [IDE integration](#in-your-ide) and [Live Debugger](#in-the-trace-explorer) workflows. From 27dbfcef26207e8201644b1a203f82d5f0ef4832 Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 11:44:56 -0400 Subject: [PATCH 08/19] Add Go tab to compatibility requirements Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index a0e71277cb5..861928ff210 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -94,6 +94,16 @@ Source Code Integration alone already gives you some Code Origin coverage automa {{% /tab %}} +{{% tab "Go" %}} + +Go services get Code Origin data via [Source Code Integration](#code-origin-coverage-via-source-code-integration) rather than the SDK flag. + +| Requirement | Frameworks | +|---|---| +| [Source Code Integration][7] enabled | Custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, Kafka consumers (sarama), OpenTelemetry, OpenTracing | + +{{% /tab %}} + {{% /tabs %}} ### Enable Code Origin From 9b68dedd6051cca78988d159dac310c4179d9027 Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 11:47:07 -0400 Subject: [PATCH 09/19] Lowercase "custom" in Go frameworks list Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 861928ff210..f8dea6cd748 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -100,7 +100,7 @@ Go services get Code Origin data via [Source Code Integration](#code-origin-cove | Requirement | Frameworks | |---|---| -| [Source Code Integration][7] enabled | Custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, Kafka consumers (sarama), OpenTelemetry, OpenTracing | +| [Source Code Integration][7] enabled | custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, Kafka consumers (sarama), OpenTelemetry, OpenTracing | {{% /tab %}} From 0394daacf8219a7ee5dba65dd5938a796b1c9a85 Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 12:11:00 -0400 Subject: [PATCH 10/19] Fix style guide issues: temporal words and dash spacing Per CONTRIBUTING.md: avoid temporal words like "already", and use em dashes with no surrounding spaces (rewritten as separate sentences instead). Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index f8dea6cd748..4e38a0738e3 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -43,7 +43,7 @@ In Trace Explorer, select a span from an enabled service to see Code Origin deta - [Source Code Integration][7] is enabled. - Your service meets the [compatibility requirements](#compatibility-requirements). -Source Code Integration alone already gives you some Code Origin coverage automatically, even if your service doesn't meet the compatibility requirements below — see [Code Origin coverage via Source Code Integration](#code-origin-coverage-via-source-code-integration). Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. +Source Code Integration alone gives you some Code Origin coverage automatically, even if your service doesn't meet the compatibility requirements below. See [Code Origin coverage via Source Code Integration](#code-origin-coverage-via-source-code-integration). Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. ### Compatibility requirements @@ -156,7 +156,7 @@ export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true ### Code Origin section is missing - Verify Code Origin is [enabled](#enable-code-origin) in your SDK configuration. -- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). If it doesn't, you may still get some Code Origin data automatically — see [Code Origin coverage via Source Code Integration](#code-origin-coverage-via-source-code-integration). +- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). If it doesn't, you might still get some Code Origin data automatically. See [Code Origin coverage via Source Code Integration](#code-origin-coverage-via-source-code-integration). - For most services, Code Origin data is captured for [service entry spans][12] only. You can filter to "Service Entry Spans" in the [APM Trace Explorer][1]. {{< img src="tracing/code_origin/code_origin_service_entry_spans_filter.png" alt="Code Origin - Search for Service Entry Spans" style="width:100%;">}} @@ -169,7 +169,7 @@ export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true ## Code Origin coverage via Source Code Integration -[Source Code Integration][7] (for example, with GitHub, GitLab, or Azure DevOps) is already required as a [prerequisite](#prerequisites). On its own, it uses static analysis of your repository to automatically determine code locations for some languages and frameworks, without meeting the other requirements. +[Source Code Integration][7] (for example, with GitHub, GitLab, or Azure DevOps) is required as a [prerequisite](#prerequisites). On its own, it uses static analysis of your repository to automatically determine code locations for some languages and frameworks, without meeting the other requirements. To get full tracer-instrumented coverage for the languages and frameworks listed in [compatibility requirements](#compatibility-requirements), also [enable Code Origin](#enable-code-origin) in your SDK. Data from both methods appears in the same Code Origin section of the Trace Explorer and powers the same [IDE integration](#in-your-ide) and [Live Debugger](#in-the-trace-explorer) workflows. From cc0e9be6bccae58891eb09898b75b2d9f49414c1 Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 12:39:40 -0400 Subject: [PATCH 11/19] Update content/en/tracing/code_origin/_index.md Co-authored-by: sstonehill12 --- content/en/tracing/code_origin/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 4e38a0738e3..2c4462ac32f 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -43,7 +43,7 @@ In Trace Explorer, select a span from an enabled service to see Code Origin deta - [Source Code Integration][7] is enabled. - Your service meets the [compatibility requirements](#compatibility-requirements). -Source Code Integration alone gives you some Code Origin coverage automatically, even if your service doesn't meet the compatibility requirements below. See [Code Origin coverage via Source Code Integration](#code-origin-coverage-via-source-code-integration). Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. +If your Source Code Integration is set up, some Code Origin details can be inferred automatically, even if your service doesn't meet the compatibility requirements below. See [Code Origin coverage via Source Code Integration](#code-origin-coverage-via-source-code-integration). Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. ### Compatibility requirements From 13da3a83da7ed3134504d05e98ea0403941fbb3e Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 12:55:19 -0400 Subject: [PATCH 12/19] Update content/en/tracing/code_origin/_index.md Co-authored-by: sstonehill12 --- content/en/tracing/code_origin/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 2c4462ac32f..bec262bdc81 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -156,7 +156,7 @@ export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true ### Code Origin section is missing - Verify Code Origin is [enabled](#enable-code-origin) in your SDK configuration. -- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). If it doesn't, you might still get some Code Origin data automatically. See [Code Origin coverage via Source Code Integration](#code-origin-coverage-via-source-code-integration). +- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). If it doesn't, you might still get some Code Origin data automatically if the source code repository is linked in Datadog. See [Code Origin coverage via Source Code Integration](#code-origin-coverage-via-source-code-integration). - For most services, Code Origin data is captured for [service entry spans][12] only. You can filter to "Service Entry Spans" in the [APM Trace Explorer][1]. {{< img src="tracing/code_origin/code_origin_service_entry_spans_filter.png" alt="Code Origin - Search for Service Entry Spans" style="width:100%;">}} From 037a360887842a488d53a047ae986df06784b492 Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 13:08:10 -0400 Subject: [PATCH 13/19] Address Vale warnings: replace "via" and fix heading/sentence length Replaces "via" with "through" per Datadog.words_case_insensitive, renames the Source Code Integration section heading to match, updates all anchor links accordingly, and splits/tightens the Prerequisites callout to stay under the 25-word sentence-length guideline. Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index bec262bdc81..6d22db14b0c 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -43,7 +43,9 @@ In Trace Explorer, select a span from an enabled service to see Code Origin deta - [Source Code Integration][7] is enabled. - Your service meets the [compatibility requirements](#compatibility-requirements). -If your Source Code Integration is set up, some Code Origin details can be inferred automatically, even if your service doesn't meet the compatibility requirements below. See [Code Origin coverage via Source Code Integration](#code-origin-coverage-via-source-code-integration). Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. +If Source Code Integration is set up, Datadog can infer some Code Origin details automatically, even for services that don't meet the compatibility requirements below. See [Code Origin coverage through Source Code Integration](#code-origin-coverage-through-source-code-integration). + +Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. ### Compatibility requirements @@ -96,7 +98,7 @@ If your Source Code Integration is set up, some Code Origin details can be infer {{% tab "Go" %}} -Go services get Code Origin data via [Source Code Integration](#code-origin-coverage-via-source-code-integration) rather than the SDK flag. +Go services get Code Origin data through [Source Code Integration](#code-origin-coverage-through-source-code-integration) rather than the SDK flag. | Requirement | Frameworks | |---|---| @@ -156,7 +158,7 @@ export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true ### Code Origin section is missing - Verify Code Origin is [enabled](#enable-code-origin) in your SDK configuration. -- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). If it doesn't, you might still get some Code Origin data automatically if the source code repository is linked in Datadog. See [Code Origin coverage via Source Code Integration](#code-origin-coverage-via-source-code-integration). +- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). If it doesn't, you might still get some Code Origin data automatically if the source code repository is linked in Datadog. See [Code Origin coverage through Source Code Integration](#code-origin-coverage-through-source-code-integration). - For most services, Code Origin data is captured for [service entry spans][12] only. You can filter to "Service Entry Spans" in the [APM Trace Explorer][1]. {{< img src="tracing/code_origin/code_origin_service_entry_spans_filter.png" alt="Code Origin - Search for Service Entry Spans" style="width:100%;">}} @@ -167,7 +169,7 @@ export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true - For transpiled Node.js applications (for example, TypeScript), make sure to generate and publish source maps with the deployed application, run Node.js with the [`--enable-source-maps`][10] flag, and use v5.59.0 or newer of the Node.js tracer. Otherwise, code previews will not work. See the Node.js [Source Code Integration][9] documentation for more details. - Code Origin is designed to reference user code only, but in some cases, third-party code references may slip through. You can report these cases to [Datadog support][13] and help improve these references. -## Code Origin coverage via Source Code Integration +## Code Origin coverage through Source Code Integration [Source Code Integration][7] (for example, with GitHub, GitLab, or Azure DevOps) is required as a [prerequisite](#prerequisites). On its own, it uses static analysis of your repository to automatically determine code locations for some languages and frameworks, without meeting the other requirements. From 9356b3902e9d1ba177e9f20e32233211d6f85300 Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 14:56:23 -0400 Subject: [PATCH 14/19] Shorten Prerequisites sentence to reduce Vale sentence-length notice Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 6d22db14b0c..2dcdec2d53f 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -43,7 +43,7 @@ In Trace Explorer, select a span from an enabled service to see Code Origin deta - [Source Code Integration][7] is enabled. - Your service meets the [compatibility requirements](#compatibility-requirements). -If Source Code Integration is set up, Datadog can infer some Code Origin details automatically, even for services that don't meet the compatibility requirements below. See [Code Origin coverage through Source Code Integration](#code-origin-coverage-through-source-code-integration). +Source Code Integration alone can infer some Code Origin details automatically, even for services that don't meet the compatibility requirements below. See [Code Origin coverage through Source Code Integration](#code-origin-coverage-through-source-code-integration). Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. From e69789e5395bb87258ad4c4ab74b85785a529f5a Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 15:09:50 -0400 Subject: [PATCH 15/19] Fix unresolved reference-style link inside Go compatibility tab The {{% tabs %}} shortcode renders each tab's content in its own isolated pass, so it can't resolve reference-style links defined at the bottom of the page. Use an inline link instead, matching the pattern already used elsewhere in the same tab. Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 2dcdec2d53f..8ed636f88a0 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -102,7 +102,7 @@ Go services get Code Origin data through [Source Code Integration](#code-origin- | Requirement | Frameworks | |---|---| -| [Source Code Integration][7] enabled | custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, Kafka consumers (sarama), OpenTelemetry, OpenTracing | +| [Source Code Integration](/integrations/guide/source-code-integration/) enabled | custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, Kafka consumers (sarama), OpenTelemetry, OpenTracing | {{% /tab %}} From 101e442bfa4682f4da69df4572203c587496a5c8 Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 16:10:11 -0400 Subject: [PATCH 16/19] Remove Kafka/sarama from Go frameworks list Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 8ed636f88a0..fb30875bc76 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -102,7 +102,7 @@ Go services get Code Origin data through [Source Code Integration](#code-origin- | Requirement | Frameworks | |---|---| -| [Source Code Integration](/integrations/guide/source-code-integration/) enabled | custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, Kafka consumers (sarama), OpenTelemetry, OpenTracing | +| [Source Code Integration](/integrations/guide/source-code-integration/) enabled | custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, OpenTelemetry, OpenTracing | {{% /tab %}} From fa2f57efd428361a68bab81f6c7c98b62a79386e Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Thu, 23 Jul 2026 17:55:48 -0400 Subject: [PATCH 17/19] Move SCI coverage note under Enable Code Origin section Co-Authored-By: Claude Sonnet 5 --- content/en/tracing/code_origin/_index.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index fb30875bc76..b289ff54431 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -43,10 +43,6 @@ In Trace Explorer, select a span from an enabled service to see Code Origin deta - [Source Code Integration][7] is enabled. - Your service meets the [compatibility requirements](#compatibility-requirements). -Source Code Integration alone can infer some Code Origin details automatically, even for services that don't meet the compatibility requirements below. See [Code Origin coverage through Source Code Integration](#code-origin-coverage-through-source-code-integration). - -Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. - ### Compatibility requirements {{% tabs %}} @@ -110,7 +106,11 @@ Go services get Code Origin data through [Source Code Integration](#code-origin- ### Enable Code Origin -Run your service with the following environment variable: +Source Code Integration alone can infer some Code Origin details automatically, even for services that don't meet the [compatibility requirements](#compatibility-requirements). See [Code Origin coverage through Source Code Integration](#code-origin-coverage-through-source-code-integration). + +Enabling the SDK flag for a compatible language and framework gets you full tracer-instrumented coverage. + +To enable through the SDK, run your service with the following environment variable: ```shell export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true From 40bc743eb5927640bf2af05e1e04270ed1102aaa Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Fri, 24 Jul 2026 10:12:12 -0400 Subject: [PATCH 18/19] Update content/en/tracing/code_origin/_index.md Co-authored-by: May Lee --- content/en/tracing/code_origin/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index b289ff54431..026d54656a1 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -158,7 +158,7 @@ export DD_CODE_ORIGIN_FOR_SPANS_ENABLED=true ### Code Origin section is missing - Verify Code Origin is [enabled](#enable-code-origin) in your SDK configuration. -- Confirm that your service meets all [compatibility requirements](#compatibility-requirements) (that is, service language, supported frameworks, and minimum tracer version). If it doesn't, you might still get some Code Origin data automatically if the source code repository is linked in Datadog. See [Code Origin coverage through Source Code Integration](#code-origin-coverage-through-source-code-integration). +- Confirm that your service meets all [compatibility requirements](#compatibility-requirements), including service language, supported frameworks, and minimum tracer version. If it doesn't, you might still get some Code Origin data automatically if the source code repository is linked in Datadog. See [Code Origin coverage through Source Code Integration](#code-origin-coverage-through-source-code-integration). - For most services, Code Origin data is captured for [service entry spans][12] only. You can filter to "Service Entry Spans" in the [APM Trace Explorer][1]. {{< img src="tracing/code_origin/code_origin_service_entry_spans_filter.png" alt="Code Origin - Search for Service Entry Spans" style="width:100%;">}} From 16e138567c25821cb1e516bb4a3b4ba5bd52bd60 Mon Sep 17 00:00:00 2001 From: Ron Hong Date: Fri, 24 Jul 2026 10:12:19 -0400 Subject: [PATCH 19/19] Update content/en/tracing/code_origin/_index.md Co-authored-by: May Lee --- content/en/tracing/code_origin/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/tracing/code_origin/_index.md b/content/en/tracing/code_origin/_index.md index 026d54656a1..156fc7f32d2 100644 --- a/content/en/tracing/code_origin/_index.md +++ b/content/en/tracing/code_origin/_index.md @@ -98,7 +98,7 @@ Go services get Code Origin data through [Source Code Integration](#code-origin- | Requirement | Frameworks | |---|---| -| [Source Code Integration](/integrations/guide/source-code-integration/) enabled | custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, OpenTelemetry, OpenTracing | +| [Source Code Integration](/integrations/guide/source-code-integration/) enabled | Custom spans, gRPC servers, Gin, Chi, Echo, Fiber, gorilla/mux, OpenTelemetry, OpenTracing | {{% /tab %}}