Взаимодействие с edgeAgent с помощью встроенных прямых методов

Область применения:IoT Edge 1.5 проверка mark IoT Edge 1.5 IoT Edge 1.4 проверка mark IoT Edge 1.4

Внимание

Поддерживаются выпуски IoT Edge 1.5 LTS и IoT Edge 1.4 LTS. IoT Edge 1.4 LTS заканчивается жизнью 12 ноября 2024 года. Если вы используете более ранний выпуск, см. статью Обновление IoT Edge.

Мониторинг развертывания IoT Edge и управление им с помощью прямых методов в модуле агента IoT Edge. Прямые методы реализуются на устройстве, а затем могут вызываться из облака. Агент IoT Edge содержит прямые методы, помогающие удаленно отслеживать устройства IoT Edge и управлять ими.

Дополнительные сведения о прямых методах, способах их использования и их реализации в собственных модулях см. в разделе Изучение и вызов прямых методов из Центра Интернета вещей.

Имена этих прямых методов обрабатываются без учета регистра.

Проверить связь

Метод ping полезен для проверки того, работает ли IoT Edge на устройстве, а также имеет ли устройство открытое подключение к Центру Интернета вещей. Используйте этот прямой метод, чтобы проверить связь с агентом IoT Edge и получить сведения о его состоянии. Успешный запрос проверки связи возвращает пустые полезные данные и "status": 200.

Например:

az iot hub invoke-module-method --method-name 'ping' -n <hub name> -d <device name> -m '$edgeAgent'

На портале Azure вызовите метод с именем ping и пустыми полезными данными JSON {}.

Снимок экрана: вызов прямого метода ping в портал Azure.

Перезапуск модуля

Метод RestartModule позволяет удаленно управлять модулями, работающими на устройстве IoT Edge. Если модуль сообщает о состоянии сбоя или другом нарушении работоспособности, можно запустить агент IoT Edge для его перезапуска. Успешная команда перезапуска возвращает пустые полезные данные и "status": 200.

Метод RestartModule доступен в IoT Edge версии 1.0.9 и более поздних.

Совет

Страница устранения неполадок IoT Edge на портале Azure упрощает перезапуск модулей. Дополнительные сведения см. в статье Мониторинг и устранение неполадок устройств IoT Edge на портале Azure.

Прямой метод RestartModule можно использовать для любого модуля, работающего на устройстве IoT Edge, включая сам модуль 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>"
}

Снимок экрана: вызов прямого метода RestartModule в портал Azure.

Прямые методы диагностики

  • GetModuleLogs: получение журналов модулей в ответе прямого метода.
  • UploadModuleLogs: получение журналов модулей и их отправка в хранилище BLOB-объектов Azure.
  • UploadSupportBundle: получение журналов модулей с помощью пакета поддержки и передача ZIP-файла в хранилище BLOB-объектов Azure.
  • GetTaskStatus: проверка состояния отправки журналов или запроса поддержки пакетов.

Эти прямые методы диагностики доступны в выпуске 1.0.10.

Следующие шаги

Свойства двойников модуля Центра IoT Edge и агента IoT Edge