“卸载” ping

此选择退出 ping 由 Windows 卸载程序在卸载完成时发送。值得注意的是,它包含了 clientIdprofileGroupId遥测环境。它遵循 通用 ping 格式

结构

{
  type: "uninstall",
  ... common ping data
  clientId: <UUID>,
  profileGroupId: <UUID>,
  environment: { ... },
  payload: {
    otherInstalls: <integer>, // Optional, number of other installs on the system, max 11.
  }
}

另请参阅 JSON 模式。这些 ping 记录在 Redash 中的 telemetry.uninstall 表中,使用默认的“遥测 (BigQuery)”数据源。

payload.otherInstalls

这是在写入 ping 时系统上存在多少其他 Firefox 安装的计数。它是 Software\Mozilla\Firefox\TaskBarIDs 注册表项中值的个数,包括 32 位和 64 位架构,包括 HKCU 和 HKLM,排除重复项,并排除此安装的值(如果存在)。例如,如果这是系统上唯一的安装,则值为 0。如果发生错误,它可能会丢失。

此计数上限为 11。这避免了在系统具有大量唯一安装的情况下引入高分辨率标识符。

卸载 Ping 存储和生命周期

在延迟的遥测初始化(每次 Firefox 运行约 1 分钟后),如果启用了选择退出遥测,则此 ping 将写入磁盘。每个安装只有一个 ping,在写入新的 ping 之前,会删除来自同一安装的任何卸载 ping。

如果 Firefox 注意到已禁用选择退出遥测,则会删除此 ping,无论 datareporting.healthreport.uploadEnabled 首选项变为 false 还是在延迟初始化时为 false。相反,当重新启用选择退出遥测时,在遥测再次设置自身时会写入此 ping。

卸载程序在将其写入磁盘后任意时间发送此 ping,因此在提交时可能已过时。过时数据的影响应该很小,因为分析可能会集中在运行 Firefox 后不久就卸载的客户端,并且此 ping 主要在 Firefox 本身更新时发生变化。