配置故障转储

重要

这是 Azure Sphere(旧版)文档。 Azure Sphere(旧版)将于 2027 年 9 月 27 日停用,用户此时必须迁移到 Azure Sphere(集成)。 使用位于 TOC 上方的版本选择器查看 Azure Sphere(集成)文档。

可以选择配置 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 秒超时期间内做出响应,则会立即重启崩溃的应用程序。

启用故障转储收集

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

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

azsphere device-group update --device-group DW100/Marketing --allow-crash-dumps-collection "On"  --regional-data-boundary "EU"

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

azsphere device-group update --device-group DW100/Marketing --allow-crash-dumps-collection "Off" 

对所有设备组禁用故障转储等效于撤销同意。

注意

  • 同意启用故障转储收集需要 管理员角色

  • 更新 AllowCrashDumpsCollection 字段时,500(内部服务器错误)响应通常表示暂时性错误。 在这种情况下,建议重试该操作。 如果继续收到错误,请联系Microsoft代表。

用于配置故障转储的脚本

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

另请参阅

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