更新后,Visual Studio Code仍然访问Internet,并且禁用了遥测

S. *_*ran 5 visual-studio-code

我刚刚在Win7上安装了带vim扩展名的vs code windows zip版本.为了保护隐私,我在settings.json文件中禁用了这些选项:

{ "update.channel": "none", "telemetry.enableTelemetry": false, "telemetry.enableCrashReporter": false }

但vscode仍然在启动时连接到不同的MS互联网站点:

  • 191.238.172.191 Microsoft Informatica Ltda(br)
  • 40.114.241.141 Microsoft Corporation(MSFT)
  • 40.77.226.250 Microsoft Corporation(MSFT)

如何禁用连接到我不想连接的后台网站的vscode?

Lap*_*hro 12

我在linux上使用Wireshark运行程序,我可以确认后台连接.

第一个地址是marketplace.visualstudio.com,所以它可能用于扩展更新检查或类似的?如果您使用扩展程序,则可能希望保留原样.

最后的地址很可能与遥测有关.即使遥测和更新被"禁用",Visual Studio Code也会进行多次DNS查找.您可以尝试将一些DNS名称添加到主机文件中以防止连接,但请记住,这样做可能会对您的系统功能产生副作用,因为Windows将其用于其他(遥测等)目的.以下是我通过小型测试触发的一些DNS查找,可能还有更多:

0.0.0.0 dc.services.visualstudio.com
0.0.0.0 dc.trafficmanager.net
0.0.0.0 vortex.data.microsoft.com
0.0.0.0 weu-breeziest-in.cloudapp.net
Run Code Online (Sandbox Code Playgroud)

我与您分享您的疑虑.拥有20年的微软经验,我非常沮丧,害怕使用他们的任何产品.Visual Studio Code的许可证也没有给我充满信心."选择退出"遥测甚至没有实际禁用它,我并不感到惊讶.

我喜欢Visual Studio Code而不是Atom,而不是从Microsoft下载它,我克隆了原始的vscode存储库(它是Visual Studio Code的MIT许可基础产品)并安装了它.当我开始输入时,它似乎没有立即连接到Internet.不幸的是,我还没弄清楚如何轻松更新和安装扩展到vscode,所以我可能最终必须返回Atom.我希望有更多兴趣和时间的人可以使用具有市场功能的无线遥测vscode,并为我们其他人分享二进制文件.

更新:

我提出了一个问题(#16131).查看vscode上的未解决问题总数(~3000)我不希望它很快得到解决.目前,您应该至少在主机文件中阻止vortex.data.microsoft.com和dc.services.visualstudio.com.阻止这两者不会影响市场的使用或任何其他必要的功能.阻止它们似乎会停止Visual Studio Code 1.7.2的大多数Internet流量(在将来的版本中可能会更改).

令我担心的是,即使发送到vortex的数据是加密的,Visual Studio Code实际上会将有关您的计算机和操作系统未加密的纯文本(通过HTTP POST)的详细信息发送到dc.services.visualstudio.com.(请注意,我还没有提出相关问题).

更新2:

根据我对问题#16131的官方回复,Visual Studio Code将信息发送给微软用户选择退出遥测.发送关于不希望任何遥测的用户的遥测有点奇怪的选择,但是他们说他们将来会停止这样做.我很欣赏他们对此事的诚实.

seanmcbreen:

我们使用遥测来帮助了解如何使产品更好 - 事实上,现在我们正在做的一些工作就是提高性能.因此,当用户选择向我们发送遥测信息时,我们非常感谢.

也就是说,有些时候人们不想这样做而且你提出了一个好点 - 今天我们继续发送事件表明用户已选择退出,没有其他任何内容,即没有发送使用数据.这是测试,以确保我们发送的所有内容... https://github.com/Microsoft/vscode/blob/master/src/vs/platform/telemetry/common/telemetryService.ts#L103

但我们不需要这样做,我不认为这是你对用户的期望 - 所以我们将停止发送任何内容,即使是退出事件也要在那里寻找变更.

感谢您引起我们的注意,希望您喜欢使用VS Code.


Von*_*onC 5

还要检查您在 VSCode 中使用的 Git 版本。

从 Git 2.19(2019 年第三季度)开始,可以使用 Git 从 IDE/产品发送可能的遥测数据。

请参阅Jeff Hostetler ( ) 的提交 7545941(2018 年 7 月 13 日。 帮助者:埃里克·阳光 ( )勒内·沙尔夫 ( )温克·萨维尔 ( )拉姆齐·琼斯 ( )(由Junio C Hamano合并-- -- in commit a14a9bf,2018 年 8 月 15 日)jeffhostetler
sunshinecorscharfewinksavillejeffhostetler
gitster

Git 的官方维护者 Junio C Hamano在此线程中补充道

传输(或文件)可以留在这个“遥测”事物的核心之外——就跟踪的内容和时间达成一致,以及跟踪的表示方式,并拥有 API 和可靠的指导方针,将允许我们对代码进行注释一次并以一致的方式获取有用的数据。

ÆvarArnfjörðBjarmason添加在这里

详细说明 Jeff 的回复(因为今年在 Git Merge 上对此进行了更详细的讨论),此功能的重点不是将 git.git 与一些默认遥测一起发布,而是让像 Microsoft 这样的 git 内部用户、Dropbox、Booking.com 等可以构建和配置他们的内部版本的 git 来为他们自己的用户打开遥测

在各个站点上有许多内部monkeypatches git(至少Microsoft 和Dropbox 报告已经有内部补丁)。

像这样的工具将允许我们就一些默认情况下可以提供的实现达成一致(但默认情况下会关闭),我们这些使用此功能的人已经在这些用户的机器上拥有“root”权限,并控制他们使用什么 git 二进制文件等等,他们的/etc/gitconfig等等。

因此,除了Microsoft/vscodeissue 16131 之外,我们还必须监控 VSCode 将来如何使用 Git,因为 Git 将提供遥测框架,供编辑人员选择使用。


在 Git 2.25(2020 年第 1 季度)中,我们为“ PRIuMAX”、“ PRIu32”等提供了兼容性回退宏定义。
但我们没有为“ PRIdMAX”提供兼容性回退宏定义,而代码显然使用了最后一个,最近没有任何问题报告。

这些<inttypes.h>必须出现在 C99 系统中的宏的回退宏定义已被删除。

请参阅Hariom Verma ( harry-hov) 的commit ebc3278 (24 Nov 2019 )
(由Junio C gitsterHamano合并-- --提交 e547e5a 中,2019 年 12 月 5 日)

git-compat-util.h: 删除PRIuMAX和其他后备定义

签字人:Hariom Verma
帮助人:Jeff King

Git 的代码库似乎已经在PRIdMAX没有任何此类回退定义的情况下使用了很长时间75459410edd(json_writer:创建 JSON 数据的新例程,2018 年 7 月 13 日),准确地说,第一个包含该提交的 Git 版本是 v2。 19.0)。

只有 for 的回退定义PRIuMAX有点不一致。

我们有时会在问题出现一年多后收到可移植性报告。

这个应该是比较安全的。

PRIuMAX是在 C99 中(就此而言,SCNuMAXPRIu32其他人也是),我们一直在毫无怨言地选择其他 C99 主义。

PRIuMAX回退定义最初加入3efb1f343a( “检查PRIuMAX,而不是NO_C99_FORMATfast-import.c”,2007-02-20,Git的V1.5.1-RC1 -合并)。
但它取代了在更早的提交中引入的构造,579d1fbfaf(“添加NO_C99_FORMAT以支持旧编译器。”,2006-07-30,Git v1.4.2-rc3),它讨论了 gcc 2.95。

这在这一点上是相当古老的。

[jc:调整消息和代码,采用 peff 写的内容]
签字人:Junio C Hamano