適用於:
IoT Edge 1.5
重要
IoT Edge 1.5 LTS 是 支援的版本。 自 2024 年 11 月 12 日起,IoT Edge 1.4 LTS 已結束生命週期。 如果您是舊版,請參閱更新 IoT Edge。
使用 IoT Edge 代理程式模組中的直接方法監視和管理 IoT Edge 部署。 直接方法會在裝置上實作,而且可以從雲端叫用。 IoT Edge 代理程式包含遠端監視和管理 IoT Edge 裝置的直接方法。
如需直接方法、如何使用及在自己的模組中實作直接方法的詳細資訊,請參閱了解並從 IoT 中樞叫用直接方法。
這些直接方法的名稱不區分大小寫。
乒
Ping 方法會檢查 IoT Edge 是否在裝置上執行,或裝置是否有與 IoT 中樞的開啟連線。 使用此方法來偵測 IoT Edge 代理程式,並檢查其狀態。 成功的 Ping 會傳回空承載和 「狀態」:200。
例如:
az iot hub invoke-module-method --method-name 'ping' -n <hub name> -d <device name> -m '$edgeAgent'
在 Azure 入口網站中,使用方法名稱 ping 和空的 JSON 負載 {} 叫用該方法。
重新啟動模組
RestartModule 方法可讓您從遠端管理在 IoT Edge 裝置上執行的模組。 如果模組回報失敗狀態或狀況不良的行為,請觸發 IoT Edge 代理程式重新啟動它。 成功的重新啟動命令會傳回具有 「status」 的空承載:200。
RestartModule 方法可從 IoT Edge 1.0.9 版開始使用。
提示
Azure 入口網站中的 [IoT Edge 疑難解答] 頁面可簡化重新啟動模組。 如需詳細資訊,請參閱從 Azure 入口網站監視 IoT Edge 裝置並進行疑難排解。
在 IoT Edge 裝置上執行的任何模組上使用 RestartModule 直接方法,包括 edgeAgent 模組。 如果您使用這個直接方法來關閉edgeAgent,則不會收到成功結果,因為連線在模組重新啟動期間中斷。
例如:
az iot hub invoke-module-method --method-name 'RestartModule' -n <hub name> -d <device name> -m '$edgeAgent' --method-payload \
'
{
"schemaVersion": "1.0",
"id": "<module name>"
}
'
在 Azure 入口網站中,使用方法名稱 RestartModule 搭配下列 JSON 承載:
{
"schemaVersion": "1.0",
"id": "<module name>"
}
診斷直接方法
- GetModuleLogs:擷取直接方法回應中的模組記錄。
- UploadModuleLogs:擷取模組記錄並上傳至 Azure Blob 記憶體。
- UploadSupportBundle:使用支援套件組合擷取模塊記錄,並將 zip 檔案上傳至 Azure Blob 記憶體。
- GetTaskStatus:檢查上傳記錄或支援配套要求的狀態。
這些診斷直接方法從 1.0.10 版本開始可用。