bcquality/microsoft/knowledge/privacy/keep-customer-data-out-of-featuretelemetry-dimensions.md
Jesper Schulz-Wedde 5bcdc55df9 Sync knowledge articles with review agent instructions
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-05 14:08:32 +02:00

1.3 KiB

bc-version domain keywords technologies countries application-area
all
privacy
featuretelemetry
customdimensions
telemetry
pii
customercontent
al
w1
all

Keep customer data out of FeatureTelemetry custom dimensions

Description

Codeunit "Feature Telemetry" writes telemetry through methods such as LogUsage, LogUptake, and LogError. The CustomDimensions dictionary passed to those methods is exported to the telemetry pipeline, so it has the same privacy boundary as Session.LogMessage dimensions. Customer names, email addresses, employee numbers, user IDs, security IDs, notes, and GetLastErrorText() do not become safe merely because they are structured dimensions.

Best Practice

Log feature state, event names, counts, enum values, and non-personal technical identifiers. Omit customer and employee identifiers from CustomDimensions; if diagnostics need correlation, use a non-personal event ID or aggregate count instead.

See sample: keep-customer-data-out-of-featuretelemetry-dimensions.good.al.

Anti Pattern

Adding employee numbers, user names, customer emails, free-text descriptions, or raw GetLastErrorText() to the CustomDimensions dictionary before calling FeatureTelemetry.LogUsage, LogUptake, or LogError.

See sample: keep-customer-data-out-of-featuretelemetry-dimensions.bad.al.