本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用获取 OTA 失败代码 Amazon CLI
-
安装和配置 Amazon CLI。
-
运行
aws configure并输入以下信息。$aws configure Amazon Access Key ID [None]:AccessIDAmazon Secret Access Key [None]:AccessKeyDefault region name [None]:RegionDefault output format [None]: json有关更多信息,请参阅使用
aws configure进行快速配置。 -
运行:
aws iot describe-job-execution --job-idJobID--thing-nameThingName哪里
JobID是我们要获取其状态的任务的完整任务 ID 字符串(它在创建 OTA 更新任务时与 OTA 更新任务相关联),也是设备注册为 Amazon IoT 的事物名称ThingNameAmazon IoT -
输出如下所示:
{ "execution": { "jobId": "AFR_OTA-****************", "status": "FAILED", "statusDetails": { "detailsMap": { "reason": "0xEEEEEEEE: 0xffffffff" } }, "thingArn": "arn:aws:iot:Region:AccountID:thing/ThingName", "queuedAt": 1569519049.9, "startedAt": 1569519052.226, "lastUpdatedAt": 1569519052.226, "executionNumber": 1, "versionNumber": 2 } }在此示例输出中,“
detailsmap”中的“reason”有两个字段:显示为“0xEEEEEEEE”的字段包含 OTA 代理的常规错误代码;显示为“0xffffffff”的字段包含子代码。 https://docs.aws.amazon.com/freertos/latest/lib-ref/html1/aws__ota__agent_8h.html 中列出了通用错误代码。错误代码带有“kOTA_Err_”前缀。子代码可以是平台特定的代码,也可以提供有关常规错误的更多详细信息。