Skip to content

Clarify Live Debugger and Dynamic Instrumentation docs - #40071

Draft
timsee wants to merge 5 commits into
masterfrom
timsee/di-live-debugger-docs
Draft

timsee wants to merge 5 commits into
masterfrom
timsee/di-live-debugger-docs

Conversation

@timsee

@timsee timsee commented Sep 18, 2026

Copy link
Copy Markdown
Contributor

What does this PR do? What is the motivation?

We've had a lot of product decisions around live debugger and dynamic instrumentation, but havent formalized them in external docs. Changes in here are mainly around:

  • what is live debugger vs dynamic instrumentation, and removing cases where we use DI to refer to both
  • specifying that LD is not just a UI feature, it also has an agent and a mcp you can use
  • redaction modes and how they are handled
  • some edge cases around the expression language

Five English documentation pages only. The scrubbing page moves under Live Debugger with redirects from its old URLs. Simulator code and test changes are deferred.

Merge readiness

  • Ready for merge

AI assistance

AI-assisted drafting, implementation checks, and automated validation.

Additional notes

  • Markdoc, the affected-page Hugo build, 101 existing JavaScript tests, and 70 rendered-page and redirect checks passed. No new Vale alerts on changed lines.
  • Checked 18 expression examples and the corrected Python startup command using ddtrace 4.11.0. Other runtime suites and live MCP enablement were not rerun for this prose revision.
  • Complements Document the live-debugger MCP toolset #40033 without duplicating its MCP tool catalog.

@github-actions github-actions Bot added Architecture Everything related to the Doc backend cdocs labels Sep 18, 2026
@github-actions github-actions Bot removed the Architecture Everything related to the Doc backend label Sep 18, 2026
@timsee
timsee requested review from a team September 18, 2026 20:05
- `loops`: The route parameter hardcoded to `5`
- `myString`: A string `"Hello, world!"`
- `mySequence`: An array of integers `[1, 2, 3]`
- `mySequence`: An array of integers `[1, 2, 3, 4]`

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

such a small nit, but the agents are annoyed: we reference mySequence[3] but then give a len == 3 sequence so thats an out of bounds.

| `@duration` | Provides access to the method call execution duration, as a floating-point value in milliseconds. |
| `@exception`| Provides access to the exception thrown within the method (only available if an uncaught exception exists). |
| `@it` | Provides access to the current element during collection iteration. Used in predicates for list operations. |
| `@key` | Provides access to the current key during dictionary iteration. Used in predicates for dictionary operations. |

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this was never fully completed, so we currently reject them in all [maybe most?] cases

Comment thread hugo/content/en/tracing/live_debugger/_index.mdoc.md Outdated
Comment thread hugo/content/en/tracing/live_debugger/sensitive-data-scrubbing.md

Live Debugger uses logpoints: auto-expiring, non-breaking breakpoints that collect diagnostic data without pausing the application. Since execution continues normally, Live Debugger can be used safely on production systems to investigate problems as they happen.

Live Debugger complements [Dynamic Instrumentation][38], which adds metrics, spans, and span tags using the same [expression language][15].

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@timsee To improve the agent's understanding of DI vs. LD, does the explanation need to be in the intro section? Or could we have a dedicated section lower on the page with a more detailed explanation of how they overlap and differ?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, lets move out of the intro do a dedicated section, thats a great idea!

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Working on a draft for this, will add a comment here when ready.

Comment thread hugo/content/en/tracing/live_debugger/_index.mdoc.md Outdated
Comment thread hugo/content/en/tracing/live_debugger/bits-live-debugger.md Outdated
Comment thread hugo/content/en/tracing/live_debugger/bits-live-debugger.md Outdated
Comment thread hugo/content/en/tracing/live_debugger/bits-live-debugger.md Outdated
Comment thread hugo/content/en/tracing/live_debugger/bits-live-debugger.md Outdated
Comment thread hugo/content/en/tracing/live_debugger/sensitive-data-scrubbing.md

Dynamic Instrumentation lets you add metrics, spans, and span tags to running production systems without restarts or code changes, including in third-party libraries.

Dynamic Instrumentation complements [Live Debugger][23], which captures logs and variable snapshots using the same [expression language][15].

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same comment as on the LD doc - we can duplicate the same copy on both pages if the docs team is okay with it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants