September 3rd, 2024

Telemetry in Go 1.23 and Beyond

Go 1.23 introduces optional telemetry for sharing toolchain usage data, enhancing bug identification and reliability. Participation has increased through the VS Code Go plugin, with future expansions planned.

Read original articleLink Icon
Telemetry in Go 1.23 and Beyond

Go 1.23 introduces a new telemetry feature that allows users to share data about the Go toolchain's usage with the development team. This data aims to help contributors identify bugs, prevent regressions, and make informed decisions. By default, telemetry data is stored locally, but users can opt to upload a limited subset of this data weekly by using the command `go telemetry on`. The design of this telemetry system underwent several iterations to ensure it was unobtrusive and privacy-preserving, ultimately requiring explicit user consent for remote data sharing. The initial implementation in the Go language server, gopls, began in October 2023, with around 100 users participating initially. To increase participation, a prompt was introduced in the VS Code Go plugin, which has since expanded the sample size to approximately 1,800 weekly participants. The telemetry has already proven beneficial, uncovering previously unknown bugs and improving the reliability of gopls. Future plans include expanding telemetry to other tools within the Go ecosystem and enhancing the metrics collected to better understand user experiences. Overall, telemetry is expected to significantly aid in the ongoing development and improvement of Go.

- Go 1.23 introduces optional telemetry for sharing toolchain usage data.

- Users can enable or disable telemetry data collection with simple commands.

- Initial telemetry implementation in gopls has already identified bugs and improved reliability.

- A prompt in the VS Code Go plugin has increased user participation in telemetry.

- Future expansions of telemetry are planned to enhance the Go ecosystem further.

Link Icon 5 comments
By @wcdolphin - 8 months
Is this telemetry enabled internally at Google? Enabling it internally would be an interesting litmus test of what is required to make it privacy/security compliant.
By @0points - 8 months

    go telemetry on
This should have been the solution all along.

Now, those who need can toggle enable it as needed in a simple fashion.

No global OPT-OUT or OPT-IN, no drama!

By @0cf8612b2e1e - 8 months
No environment variable you can pre configure to keep it off either.
By @dizhn - 8 months
go telemetry on, to start uploading. go telemetry off to stop logging telemetry data. Isn't this a bit of a weird interface? I didn't check the docs but there must be a way to get to the default setting of log but don't upload.