Question-led guide · governance
How do I control sensitive data and cardinality in agent telemetry?
A telemetry privacy profile for data minimization, bounded attributes, content capture, hashing, sampling, access, retention, deletion, and incident exceptions.
Direct answer
Control agent telemetry at collection time. Keep operational attributes low-cardinality and content-free by default; store stable opaque IDs, bounded enums, sizes, outcome classes, and protected artifact references. Put prompts, outputs, tool arguments, retrieved passages, user IDs, and memory content behind explicit purpose, sampling, redaction, access, retention, and deletion policy. Hashing does not make predictable sensitive values anonymous.
Scope
Use this profile when instrumenting prompts, model calls, retrieval, memory, tools, workflows, and evaluations. It covers both sensitive content and high-cardinality identifiers that can overload telemetry systems. Security audit records may require different retention and integrity from performance traces.
Why it happens
Agent telemetry frameworks often capture input and output because it makes demos easy to debug. In production, those fields can contain personal data, source code, credentials, customer records, medical or financial information, and adversarial text. Copies spread to exporters, processors, vendors, dashboards, alerts, and support tickets.
High-cardinality fields create a parallel operational failure. Raw prompt, URL, user, document, tool argument, error string, and task ID become metric labels, exploding series counts and cost. Removing content later from the backend is harder than not collecting it.
Diagnosis
Inventory every field at the instrumentation source and follow it through collector, queue, storage, derived metrics, logs, dashboards, exports, backups, and support workflows. Classify data purpose, sensitivity, cardinality, owner, access, retention, and deletion path.
Run seeded-secret tests. Place unique canary values in prompts, retrieved documents, tool results, and errors, then verify whether they appear anywhere unexpected. Test cardinality with production-like task and user variety, not one demo session.
Solution
Define a default metadata profile using bounded operation names, provider/model versions, sizes, counts, durations, outcome enums, policy-decision IDs, opaque task/action IDs, and content-capture mode. Do not put high-cardinality IDs in metric labels; keep them in traces or protected event stores where justified.
Create a separate content-capture profile with explicit purpose, approval, sampling, target scope, redaction, encrypted storage, role-based access, audit, retention, and deletion. Prefer stable references to protected artifacts over copying content into spans.
Apply transformations as close to source as practical, then enforce again at the collector. Monitor redaction failures, dropped attributes, series counts, access, exports, and deletion lag.
Artifact
Complete one profile per environment and capture mode:
| Field | Policy |
|---|---|
| Purpose and owner | Diagnostic question, decision, accountable owner, and expiry |
| Default metadata | Allowed bounded fields and naming/version standard |
| Prohibited content | Prompts, output, arguments, documents, secrets, and direct identifiers |
| Conditional capture | Trigger, sample, approval, scope, and user/tenant constraints |
| Transformation | Drop, allowlist, redact, tokenize, hash, aggregate, or reference |
| Cardinality | Label allowlist, limits, overflow behavior, and cost alert |
| Access/export | Roles, vendors, regions, dashboards, alerts, and download policy |
| Retention/deletion | TTL, legal hold, cache/backups, user rights, and verification |
| Testing | Seeded secrets, schema lint, volume load, and periodic access review |
| Incident mode | Time-bounded override, approver, extra controls, and automatic rollback |
Common mistakes
- Capturing all prompts and outputs and promising to redact later.
- Using raw user, task, URL, or error text as metric labels.
- Assuming hashes are anonymous and harmless.
- Applying redaction only in the final backend after data crossed vendors.
- Creating an incident override that never expires.
Evidence
OpenTelemetry recommends considering sensitive data at instrumentation, collector, backend, and access layers rather than assuming telemetry is harmless.
OpenTelemetry's security guidance discusses avoiding collection, data minimization, attribute processing, redaction, and access controls.
Primary source · official-doc · checked Aug 26, 2026
Limit: The guidance is general and does not determine legal compliance, re-identification risk, or a product-specific retention period.
Generative-AI risk management should address privacy, security, provenance, monitoring, and data governance across the system lifecycle.
NIST AI 600-1 provides risk considerations and actions related to generative-AI data, monitoring, privacy, and security.
Primary source · standard · checked Aug 26, 2026
Limit: The voluntary profile does not define telemetry schemas, field classifications, or local legal obligations.
Content telemetry should be a separate data product with stricter controls than routine operational spans and metrics.
The telemetry-privacy profile below separates default metadata from time-bounded diagnostic capture.
Signal Studio author framework · reviewed Aug 26, 2026
Limit: Even metadata and hashes can be identifying or sensitive when combined with other records.
Limitations
No schema eliminates inference from metadata, and redaction can miss secrets or destroy diagnostic meaning. Jurisdiction, contracts, user consent, employee monitoring, and incident obligations vary. Obtain qualified privacy and security review.
FAQ
- Can I hash prompts and store the hash as a safe identifier?
- A hash can support equality checks, but predictable or low-entropy content may be guessed, and the hash remains linkable. Use keyed schemes where appropriate and treat the result according to its re-identification risk.
- How do I debug without prompt content?
- Start with typed outcomes, sizes, versions, IDs, and error classes. Enable narrowly scoped, approved content capture for sampled cases, store it in a protected system, and expire it automatically.
Related guides
Continue within AI agent observability, or use one of these adjacent diagnostics:
Editorial QA: automated native-English, structure, source-presence, and link checks completed . This record is not an independent expert endorsement. Review boundary.
