配置故障转储
重要
这是 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 进行或GET
PATCH
调用,以查看或修改AllowCrashDumpsCollection
一个或多个设备组的值。 有关详细信息,请参阅 Azure Sphere 库中的故障转储配置脚本、未映射的脚本、实用工具和函数的集合。