redhat-developer / redhat-developer/vscode-redhat-telemetry
Honor global VS Code telemetry setting
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 31
- Forks
- 39
- Avg merge
- 9h 15m
- Merged PRs (30d)
- 1
Description
Currently telemetry settings are exclusively controlled via the custom redhat.telemetry.enabled setting, which needs to be specified in each Red Hat extension's package.json as a configuration property, leading to warning messages in the Developer Console when multiple Red Hat extensions are installed, as e.g. reported here:
[redhat.vscode-yaml]: Cannot register 'redhat.telemetry.enabled'. This property is already registered.
The official Telemetry extension authors guide mentions in Without the telemetry module:
Extension authors who wish not to use Application Insights can utilize their own custom solution to send telemetry. In this case, it is still required that extension authors respect the user's choice by utilizing the isTelemetryEnabled and onDidChangeTelemetryEnabled API. By doing this, users will have one centralized place to control their telemetry settings.
and then in Custom telemetry settings:
Adding a custom telemetry setting is not an exemption from respecting a user's decision and the isTelemetryEnabled and onDidChangeTelemetryEnabled flag must always be respected. If isTelemetryEnabled reports false, even if your setting is enabled, telemetry must not be sent.
The mentioned isTelemetryEnabled boolean setting is part of the VS Code API's dev namespace: https://code.visualstudio.com/api/references/vscode-api#env
Would it be feasible to eventually migrate over to the global setting or are there other concerns around this?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the telemetry configuration in each Red Hat extension's package.json and the VS Code env API documentation for isTelemetryEnabled and onDidChangeTelemetryEnabled. Determine the migration scope and any concerns raised by the existing custom setting; done means a documented, agreed approach that avoids duplicate setting registration and respects the global telemetry choice.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- developer-experience, devtools
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100