本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
客户端设备排查
使用本节中的故障排除信息和解决方案帮助解决 Greengrass 客户端设备和客户端设备组件的问题。
Greengrass 发现问题
使用以下信息排查 Greengrass 发现问题。当客户端设备使用Greengrass 发现 API以识别可以连接的 Greengrass 核心设备。
主题
Greengrass 发现问题(HTTP API)
使用以下信息排查 Greengrass 发现问题。您可能会看到这些错误,如果您使用 cURL 测试发现 API.
主题
curl: (52) Empty reply from server
您可能会看到此错误,如果您指定一个非活动Amazon IoT证书。
检查客户端设备是否具有附加的证书,并且证书是否处于活动状态。有关更多信息,请参阅 。将事物或策略附加到客户端证书和激活或停用客户端证书中的Amazon IoT Core开发人员指南.
HTTP 403: {"message":null,"traceId":"a1b2c3d4-5678-90ab-cdef-11111EXAMPLE"}
如果客户端设备无权调用greengrass:Discover
为本身。
检查客户端设备的证书是否具有允许greengrass:Discover
. 您不能使用事物策略变量(iot:Connection.Thing.
) 中的*
Resource
部分获取此权限。有关更多信息,请参阅 发现身份验证和授权。
HTTP 404: {"errorMessage":"The thing provided for discovery was not found"}
如果客户端设备未与任何 Greengrass 核心设备关联,或Amazon IoT Greengrass V1组中)。
检查客户端设备是否与要连接的核心设备相关联。有关更多信息,请参阅 关联客户端设备。
Greengrass 发现问题 (Amazon IoT Device SDK用于 Python 的 v2)
使用以下信息排查 Greengrass 发现的问题Amazon IoT Device SDK适用于 Python 的 v2
主题
- awscrt.exceptions.AwsCrtError: AWS_ERROR_HTTP_CONNECTION_CLOSED: The connection has closed or is closing.
- awsiot.greengrass_discovery.DiscoveryException: ('Error during discover call: response_code=403', 403)
- awsiot.greengrass_discovery.DiscoveryException: ('Error during discover call: response_code=404', 404)
awscrt.exceptions.AwsCrtError: AWS_ERROR_HTTP_CONNECTION_CLOSED: The connection has closed or is closing.
您可能会看到此错误,如果您指定一个非活动Amazon IoT证书。
检查客户端设备是否具有附加的证书,并且证书是否处于活动状态。有关更多信息,请参阅 。将事物或策略附加到客户端证书和激活或停用客户端证书中的Amazon IoT Core开发人员指南.
awsiot.greengrass_discovery.DiscoveryException: ('Error during discover call: response_code=403', 403)
如果客户端设备无权调用greengrass:Discover
为本身。
检查客户端设备的证书是否具有允许greengrass:Discover
. 您不能使用事物策略变量(iot:Connection.Thing.
) 中的*
Resource
部分获取此权限。有关更多信息,请参阅 发现身份验证和授权。
awsiot.greengrass_discovery.DiscoveryException: ('Error during discover call: response_code=404', 404)
如果客户端设备未与任何 Greengrass 核心设备关联,或Amazon IoT Greengrass V1组中)。
检查客户端设备是否与要连接的核心设备相关联。有关更多信息,请参阅 关联客户端设备。
Greengrass 发现问题 (Amazon IoT Device SDKv2 适用于 C ++)
使用以下信息排查 Greengrass 发现的问题Amazon IoT Device SDKv2 适用于 C ++
主题
aws-c-http: AWS_ERROR_HTTP_CONNECTION_CLOSED, The connection has closed or is closing.
您可能会看到此错误,如果您指定一个非活动Amazon IoT证书。
检查客户端设备是否具有附加的证书,并且证书是否处于活动状态。有关更多信息,请参阅 。将事物或策略附加到客户端证书和激活或停用客户端证书中的Amazon IoT Core开发人员指南.
aws-c-common: AWS_ERROR_UNKNOWN, Unknown error. (HTTP 403)
如果客户端设备无权调用greengrass:Discover
为本身。
检查客户端设备的证书是否具有允许greengrass:Discover
. 您不能使用事物策略变量(iot:Connection.Thing.
) 中的*
Resource
部分获取此权限。有关更多信息,请参阅 发现身份验证和授权。
aws-c-common: AWS_ERROR_UNKNOWN, Unknown error. (HTTP 404)
如果客户端设备未与任何 Greengrass 核心设备关联,或Amazon IoT Greengrass V1组中)。
检查客户端设备是否与要连接的核心设备相关联。有关更多信息,请参阅 关联客户端设备。
Greengrass 发现问题 (Amazon IoT Device SDKv2 适用于 JavaScript)
使用以下信息排查 Greengrass 发现的问题Amazon IoT Device SDKv2 适用于 JavaScript
主题
Error: aws-c-http: AWS_ERROR_HTTP_CONNECTION_CLOSED, The connection has closed or is closing.
您可能会看到此错误,如果您指定一个非活动Amazon IoT证书。
检查客户端设备是否具有附加的证书,并且证书是否处于活动状态。有关更多信息,请参阅 。将事物或策略附加到客户端证书和激活或停用客户端证书中的Amazon IoT Core开发人员指南.
Error: Discovery failed (headers: [object Object]) { response_code: 403 }
如果客户端设备无权调用greengrass:Discover
为本身。
检查客户端设备的证书是否具有允许greengrass:Discover
. 您不能使用事物策略变量(iot:Connection.Thing.
) 中的*
Resource
部分获取此权限。有关更多信息,请参阅 发现身份验证和授权。
Error: Discovery failed (headers: [object Object]) { response_code: 404 }
如果客户端设备未与任何 Greengrass 核心设备关联,或Amazon IoT Greengrass V1组中)。
检查客户端设备是否与要连接的核心设备相关联。有关更多信息,请参阅 关联客户端设备。
Error: Discovery failed (headers: [object Object])
运行 Greengrass 发现示例时,您可能会看到此错误(没有 HTTP 响应代码)。由于多种原因而出现该错误。
Greengrass 发现问题 (Amazon IoT Device SDK适用于 Java 的 v2)
使用以下信息排查 Greengrass 发现的问题Amazon IoT Device SDK适用于 Java 的 v2
主题
- software.amazon.awssdk.crt.CrtRuntimeException: Error Getting Response Status Code from HttpStream. (aws_last_error: AWS_ERROR_HTTP_DATA_NOT_AVAILABLE(2062), This data is not yet available.)
- java.lang.RuntimeException: Error x-amzn-ErrorType(403)
- java.lang.RuntimeException: Error x-amzn-ErrorType(404)
software.amazon.awssdk.crt.CrtRuntimeException: Error Getting Response Status Code from HttpStream. (aws_last_error: AWS_ERROR_HTTP_DATA_NOT_AVAILABLE(2062), This data is not yet available.)
您可能会看到此错误,如果您指定一个非活动Amazon IoT证书。
检查客户端设备是否具有附加的证书,并且证书是否处于活动状态。有关更多信息,请参阅 。将事物或策略附加到客户端证书和激活或停用客户端证书中的Amazon IoT Core开发人员指南.
java.lang.RuntimeException: Error x-amzn-ErrorType(403)
如果客户端设备无权调用greengrass:Discover
为本身。
检查客户端设备的证书是否具有允许greengrass:Discover
. 您不能使用事物策略变量(iot:Connection.Thing.
) 中的*
Resource
部分获取此权限。有关更多信息,请参阅 发现身份验证和授权。
java.lang.RuntimeException: Error x-amzn-ErrorType(404)
如果客户端设备未与任何 Greengrass 核心设备关联,或Amazon IoT Greengrass V1组中)。
检查客户端设备是否与要连接的核心设备相关联。有关更多信息,请参阅关联客户端设备。