From 8ef66e8bb31b7c995504d56a6229a3c015ab3de3 Mon Sep 17 00:00:00 2001 From: datadog-bits-staging <264369727+datadog-bits-staging@users.noreply.github.com> Date: Sat, 11 Jul 2026 13:04:20 +0000 Subject: [PATCH] Add LLM Observability data deletion docs --- content/en/llm_observability/data_deletion.md | 51 +++++++++++++++++++ .../data_security_and_rbac.md | 8 +++ 2 files changed, 59 insertions(+) create mode 100644 content/en/llm_observability/data_deletion.md diff --git a/content/en/llm_observability/data_deletion.md b/content/en/llm_observability/data_deletion.md new file mode 100644 index 00000000000..c6ba46ab6fb --- /dev/null +++ b/content/en/llm_observability/data_deletion.md @@ -0,0 +1,51 @@ +--- +title: Data Deletion +description: How LLM Observability handles data deletion requests, including automatic deletion of dataset records that match an Event Platform deletion search. +further_reading: + - link: "/llm_observability/data_security_and_rbac" + tag: "Documentation" + text: "Data Security and RBAC" + - link: "/llm_observability/experiments/datasets" + tag: "Documentation" + text: "Datasets" +--- + +When a data deletion request is submitted for LLM Observability events in the Event Platform — for example to satisfy a GDPR or CCPA right-to-erasure request — Datadog automatically extends the deletion to any **dataset records** that were created from those events. This helps ensure that sensitive data is consistently removed from both the trace store and the Experiments dataset store. + +## How it works + +1. A deletion request arrives carrying an org ID, a time range, and a tag-based search filter (for example `env:prod service:myapp` or `@trace_id:`). +2. Before the Event Platform deletion runs, LLM Observability translates the search filter into a tag-containment condition and starts a row-scoped deletion workflow targeting the dataset records store. +3. Dataset records whose tags match the translated condition and whose org ID matches are deleted. +4. If the search cannot be translated to an exact tag filter — for example it contains free-text terms, wildcard patterns on tag values, or unsupported query constructs — the dataset record deletion is skipped and the Event Platform deletion still proceeds. The system fails closed to avoid deleting the wrong rows. +5. The deletion workflow is idempotent: if the same deletion request is redelivered, a second workflow is not started. + +## Tag filter translation + +The following query forms are supported and translated to tag-containment filters: + +- **`key:value`** terms (for example `env:prod`) — matched against the tags on the dataset record +- **`@tags:"key:value"`** quoted form, equivalent to the bare `key:value` form +- **AND / OR / NOT** combinations of the above +- **`key:(value1 OR value2)`** value lists + +Reserved scalar attributes are matched against their own dedicated columns rather than the tags object: + +- `@trace_id:` — equality match on the `trace_id` column +- `@span_id:` — equality match on the `span_id` column +- `@trace_id:` / `@span_id:` — pattern match on the column + +The following are **not supported** and cause the dataset record deletion to be skipped (the Event Platform deletion still proceeds): + +- Free-text terms with no `key:` prefix +- Wildcard or glob patterns on tag values (for example `service:ai-*`) +- Numeric comparisons or range queries +- Queries consisting only of event-scoping attributes such as `@event_type`, which have no dataset record counterpart + +## Relationship to org-level deletion + +When an organization leaves Datadog, all of its LLM Observability data — including every dataset record row — is removed through a separate org-wide deletion flow. The tag-scoped deletion described on this page is a complementary, targeted mechanism for individual data-subject requests; it deletes only the rows that match the specific search filter of the request. + +## Further reading + +{{< partial name="whats-next/whats-next.html" >}} diff --git a/content/en/llm_observability/data_security_and_rbac.md b/content/en/llm_observability/data_security_and_rbac.md index 9e2cd30fc14..cc6d4b6fedd 100644 --- a/content/en/llm_observability/data_security_and_rbac.md +++ b/content/en/llm_observability/data_security_and_rbac.md @@ -5,6 +5,9 @@ further_reading: - link: "/account_management/rbac/data_access" tag: "Documentation" text: "Learn more about data access controls" + - link: "/llm_observability/data_deletion" + tag: "Documentation" + text: "Data Deletion" --- {{< whatsnext desc=" ">}} {{< nextlink href="https://datadoghq.com/legal/hipaa-eligible-services">}}HIPAA-Eligible Services: Datadog Legal's list of HIPAA-eligible services{{< /nextlink >}} @@ -33,6 +36,10 @@ Agent Observability integrates with [Sensitive Data Scanner][3], which helps pre By proactively scanning for sensitive data, Agent Observability ensures that conversations remain secure and compliant with data protection regulations. This additional layer of security reinforces Datadog's commitment to maintaining the confidentiality and integration of user interactions with LLMs. +## Data Deletion + +When a data deletion request is submitted for LLM Observability events — for example to satisfy a GDPR or CCPA erasure request — Datadog automatically extends the deletion to any dataset records that were created from those events, based on the request's tag filter. For more information, see [Data Deletion][4]. + ## Further reading {{< partial name="whats-next/whats-next.html" >}} @@ -40,4 +47,5 @@ By proactively scanning for sensitive data, Agent Observability ensures that con [1]: /account_management/rbac/data_access [2]: /llm_observability/instrumentation/sdk/#span-processing [3]: /security/sensitive_data_scanner/ +[4]: /llm_observability/data_deletion