诊断影子
| 问题 |
故障排除指南 |
设备的影子文档被拒绝,并显示 Invalid JSON
document。 |
如果您不熟悉 JSON,请修改本指南中提供的示例,以供您自己使用。有关更多信息,请参阅 影子文档示例。 |
| 我提交了正确的 JSON,但设备的影子文档中没有存储其中的任何内容或仅存储了一部分。 |
请确保您遵循了以下 JSON 格式指南。仅存储 desired 和 reported 部分中的 JSON 字段。这些部分以外的 JSON 内容(即使格式正确)将被忽略。 |
| 我收到一条错误消息,称设备的影子超出了允许的大小。 |
设备的影子仅支持 8KB 数据。请尝试缩短您的 JSON 文档中的字段名称,也可以通过创建更多事物来创建更多影子。一个设备可拥有无限数量的事物/与之关联的影子。唯一的要求是,您账户中的每个事物名称都必须是唯一的。 |
| 我收到了一个超过 8KB 的设备的影子。这是怎么回事? |
在您收到设备的影子之后,Amazon IoT 服务会向其添加元数据。该服务将此类数据添加到其响应中,但此类数据不会计入 8KB 的限制中。只有发送到设备的影子的状态文档中有关 desired 状态和 reported 状态的数据才会计入到此限制中。 |
| 我的请求由于版本错误而被拒绝了。我应该怎么办? |
执行 GET 操作,以同步至最新的状态文档版本。使用 MQTT 时,请订阅 ./update/accepted 主题,这样您便会收到有关状态更改的通知以及最新版本的 JSON 文档。 |
| 时间戳关闭了几秒钟。 |
单个字段和整个 JSON 文档的时间戳会在 Amazon IoT 服务收到文档或状态文档发布到 ./update/accepted 和 ./update/delta 消息后更新。消息可能会由于网络发生延迟,从而导致时间戳关闭几秒钟。 |
| 我的设备可以在相应的影子主题下发布消息并订阅这些主题,但当我尝试通过 HTTP REST API 更新影子文档时,我收到了 HTTP 403 错误消息。 |
请确保您已在 IAM 中创建了相应的策略,能够访问这些主题并针对您使用的凭证执行相应的操作(UPDATE/GET/DELETE)。IAM 策略和证书策略是相互独立的。 |
| 其它问题。 |
Device Shadow 服务会将错误记录到 CloudWatch Logs。要找出设备和配置问题,请启用 CloudWatch Logs 并查看日志,以获取调试信息。 |