

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 診斷影子的問題
<a name="diagnosing-shadows"></a>

**協助我們改善此主題**  
 [讓我們知道如何能使其變得更好](https://docs.aws.amazon.com//forms/aws-doc-feedback?hidden_service_name=IoT%20Docs&topic_url=http://docs.aws.amazon.com/en_us/iot/latest/developerguide/diagnosing-shadows.html) 


**診斷影子**  

| 問題 | 準則疑難排解 | 
| --- | --- | 
| 裝置的影子文件遭受 Invalid JSON document 拒絕。 | 如果您不熟悉 JSON，請修改此指南中提供的範本供自行使用。如需詳細資訊，請參閱[影子文件範例](device-shadow-document.md#device-shadow-document-syntax)。 | 
| 我已提交正確的 JSON，但該檔案完全未存放於裝置的影子文件中，或僅存放了部分。 | 請確認您是否有按照 JSON 格式編排準則進行。僅有 desired 和 reported 內的 JSON 欄位會儲存。在這些部分之外的 JSON 內容 (即使格式正確) 會被忽略。 | 
| 我收到裝置影子超出允許大小的錯誤。 | 裝置影子僅支援 8 KB 的資料。請嘗試縮短您 JSON 文件內的欄位名稱，或直接建立更多物件，以建立更多的影子。可與裝置相關聯的物件/影子數目，並不受限制。唯一的要求是，每個物件名稱在您的帳戶中皆不得重複。 | 
| 當我收到裝置的影子時，其大於 8 KB。怎麼會出現這種情況？ | 收到時， AWS IoT 服務會將中繼資料新增至裝置的影子。該服務會在回應中包含此資料，而不會計入 8 KB 的限制之中。只有傳送至裝置影子的狀態文件內之 desired 與 reported 狀態的資料，才會計入限制。 | 
| 我的請求因為版本錯誤而遭拒。我該怎麼辦？ | 請執行 GET 操作，以同步到文件的最新版本。當使用 MQTT 時，訂閱 ./update/accepted 主題，以接收狀態變更的通知和 JSON 文件的最新版本。 | 
| 時間戳記出現幾秒鐘的差距。 | 當 AWS IoT 服務收到文件或狀態文件發佈到 ./update/accepted 和 ./update/delta 訊息時，會更新個別欄位的時間戳記和整個 JSON 文件。網路傳遞的訊息可能會延遲幾秒，而導致時間戳記有幾秒鐘的差距。 | 
| 我的裝置可發佈於對應的影子主題且已訂閱該主題，但當我嘗試透過 HTTP REST API 更新影子文件時，卻出現 HTTP 403。 | 請確認已在 IAM 中建立政策，以存取這類主題及您所使用憑證相應的動作 (UPDATE/GET/DELETE)。IAM 政策與憑證政策彼此獨立。 | 
| 其他問題。 | Device Shadow 服務會將錯誤記錄至 CloudWatch Logs。如要識別裝置和組態的問題，啟用 CloudWatch Logs 並檢視日誌即可取得除錯資訊。 | 