telemetry-best-practices
Installation
SKILL.md
Telemetry Best Practices
This extension uses @microsoft/vscode-azext-utils (callWithTelemetryAndErrorHandling, IActionContext.telemetry) to emit telemetry events. Telemetry is public — assume every property and measurement value is shipped to a backend and visible to whoever has access to the dashboards. Treat every new property as a privacy decision.
These rules apply to the entire codebase (extension host, webviews, language services, helper packages), not to any single feature area.
When to Use This Skill
Apply it whenever code:
- Calls
callWithTelemetryAndErrorHandling(...),callWithTelemetryAndErrorHandlingSync(...), or registers a command (which wraps the same). - Assigns to
context.telemetry.properties.*orcontext.telemetry.measurements.*. - Defines a helper (e.g.
report*Stats,track*,*Telemetry) that mutates anIActionContext. - Adds or renames a telemetry event string (the first argument to
callWithTelemetryAndErrorHandling).
Hard Rules — Never Emit PII / EUII
The following must never appear in telemetry.properties or telemetry.measurements, and never as part of an event name: