在 GitHub 上编辑

匿名使用统计分析

为了帮助我们更好地了解 DVC 的使用情况并加以改进,DVC 会收集和上报匿名的使用统计数据。您首次运行 dvc init 时将会收到通知。

动机

分析数据有助于我们决定如何更好地设计新功能以及优先处理当前任务。用户的匿名聚合数据使我们能够根据人们使用 DVC 的方式、场景和时间来优先安排修复和改进工作。例如:

  • 如果大多数用户支持 reflinks(取决于文件系统类型),我们可以默认关闭缓存保护模式(参见 dvc unprotect)。
  • 收集操作系统信息及 DVC 的安装方式,可帮助我们确定需要支持和优先考虑的 OS 平台和版本。
  • 如果某个命令的使用率极低,这会促使我们思考该命令或其文档是否存在使用问题。

保留期限

用户和事件数据的保留期限为 14 个月。

收集内容

DVC 的分析功能会为每个事件记录以下信息:

  • DVC 版本,例如 0.82.0
  • DVC 是否从二进制发布包安装
  • 操作系统信息,例如 Ubuntu Linux 14.04
  • 项目是否使用 Git
  • 命令类型,例如 CmdDataPull
  • 命令返回码,例如 1
  • 一个随机生成的用户 ID(例如 8ca59a29-ddd9-4247-992a-9b4775732aad),通过 uuid 生成
  • 对于 CI 任务,每个仓库生成一个随机 ID(例如 8ca59a29-ddd9-4247-992a-9b4775732aad),通过 uuid 生成

这些信息无法用于追踪个人用户,但能帮助我们准确衡量用户数量与事件数量之间的关系。

实现方式

相关代码可在 analytics.py 中查看。统计操作在独立的后台进程中执行,并快速失败以避免影响主流程执行。若无网络连接,将立即静默失败。

DVC 的分析数据通过 DVC 代理以 HTTPS 方式发送至 Google Analytics。

选择退出

DVC 的分析功能有助于整个社区的发展,因此建议保持启用。但如果您希望选择退出,可通过 dvc config 命令(或手动设置 core.analytics)禁用:

$ dvc config core.analytics false

这将仅对当前项目禁用分析功能。或者,您也可以使用 dvc config--global--system 选项,分别为当前用户或系统所有用户禁用分析功能。

另一种禁用方式是设置环境变量 DVC_NO_ANALYTICS(该设置将覆盖配置文件中的设置)。

内容

🐛 发现问题?告诉我们!或者修复它:

在 GitHub 上编辑

有疑问?加入我们的聊天,我们会为您提供帮助:

Discord 聊天