配置故障转储

可以选择性地配置 Azure Sphere 设备,以便在发生 OS 或应用程序崩溃时向 Microsoft 报告完整的用户模式故障转储。 Microsoft 使用此信息来提高所有 Azure Sphere 设备的 Azure Sphere OS 质量。

下图演示了故障转储收集的阶段:

故障转储工作流

阶段 描述
1. 为一个或多个设备组启用故障转储收集。 如果选择为设备组启用故障转储收集,则表示你已同意收集、上传和分析用户模式故障转储。
注意: 如果你的应用从最终用户收集个人数据,则应在为这些设备启用故障转储之前获得他们的同意。
2. Azure Sphere 安全服务将在 48 小时内将选择加入状态与设备同步。 除非设备收到选择加入信号,否则永远不会生成故障转储。 如果设备在此时间段内未联系 Azure Sphere 安全服务,则设备将自动停止生成故障转储,直到选择加入状态再次成功与 Azure Sphere 安全服务同步。
3. 如果启用了故障转储,则当 OS 组件或应用程序崩溃时,设备会尝试将故障转储上传到安全位置。 安全上传后,数据不会离开安全位置。
4. 数据只能由 Azure Sphere 团队通过安全、远程、完全审核的会话进行故障排除。

隐私注意事项

  • 所有 Azure Sphere 设备的故障转储都安全地存储在美国东部、美国西部和欧盟数据中心。 欧盟的客户可以通过将 “区域数据边界 设置”参数设置为 EU,确保仅在欧盟内处理和存储其应用程序映像和故障转储文件。

    注意

    如果将“区域数据边界”设置为 None,则默认情况下,故障转储文件将存储在美国东部或西部。

  • 故障转储数据根据所有适用的法律和法规(包括 GDPR)进行存储,并在 29 天后删除。

性能注意事项

  • 故障转储上传大小通常从几 KiB 到几十 KiB 不等。
  • 智能限制策略确保仅在必要时启动故障转储上传,以尽量减少对设备的性能和带宽影响。 这种智能限制会自动发生,无需执行任何操作。 在已收集来自相同崩溃的足够数量的转储后,将跳过故障转储上传。
  • 当应用程序崩溃时,设备将尝试安全地上传故障转储(如果已启用)。 故障转储上传完成后,故障应用程序将重启。 如果无法为上传建立网络连接,并且设备在 5 秒超时期限内未响应,则崩溃的应用程序会立即重启。

启用故障转储收集

默认情况下不启用故障转储。 可以使用 az sphere device-group update 命令或在AllowCrashDumpsCollection“设备组 - 修补程序 API”中的“请求正文”字段中同意启用故障转储收集。

例如,以下 CLI 命令启用故障转储收集,并指定故障转储数据存储在 EU 中。

az sphere device-group update --product DW100 --device-group Marketing --allow-crash-dumps-collection Enabled  --regional-data-boundary EU

若要从 CLI 禁用故障转储收集,请将 设置为 --allow-crash-dumps-collection"Disabled"

az sphere device-group update --product DW100 --device-group Marketing --allow-crash-dumps-collection "Disabled" 

禁用所有设备组的故障转储相当于撤销同意。

用于配置故障转储的脚本

我们提供了一个示例脚本,可用于发出 GETPATCH 调用 Azure Sphere API,以查看或修改 AllowCrashDumpsCollection 一个或多个设备组的值。 有关详细信息,请参阅 Azure Sphere 库中故障转储配置脚本,这是未经维护的脚本、实用工具和函数的集合。

另请参阅

提高透明度和客户对数据的控制