Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье содержатся рекомендации по мониторингу и устранению распространенных проблем и устранению маршрутизации сообщений Центра Интернета вещей.
Мониторинг маршрутизации сообщений
Мы рекомендуем отслеживать метрики Центра Интернета вещей, связанные с маршрутизацией сообщений и конечными точками , чтобы получить общее представление об отправленных сообщениях. Вы также можете создать параметр диагностики для отправки операций для маршрутов в журналах ресурсов Центра Интернета вещей в журналы Azure Monitor, Концентраторы событий или службу хранилища Azure для пользовательской обработки. Дополнительные сведения об использовании метрик, журналов ресурсов и параметров диагностики см. в статье Мониторинг Центра Интернета вещей. Руководство см. в статье Настройка и использование метрик и журналов ресурсов с помощью Центра Интернета вещей.
Мы также рекомендуем включить резервный маршрут , если вы хотите поддерживать сообщения, которые не соответствуют запросу ни на одном из маршрутов. Эти сообщения могут храниться во встроенной конечной точке в течение настроенного количества дней хранения.
Наиболее важные проблемы
Ниже приведены наиболее распространенные проблемы, наблюдаемые при маршрутизации сообщений. Чтобы начать устранение неполадок, выберите проблему и выполните подробные действия.
- Сообщения с моих устройств не направляются должным образом
- Внезапно перестали получать сообщения во встроенной конечной точке концентраторов событий
Сообщения с моих устройств не направляются должным образом
Чтобы устранить эту проблему, проанализируйте следующие сведения.
Метрики маршрутизации для этой конечной точки
Все метрики Центра Интернета вещей, связанные с маршрутизацией, имеют префикс Routing. Вы можете объединить данные из нескольких метрик, чтобы определить первопричину проблем. Например, используйте метрику Routing Deliveries, чтобы определить количество сообщений, доставленных на конечную точку или удаленных при несоответствии запросам любых маршрутов, а также если отключен резервный маршрут. Проверьте метрику Routing Latency, чтобы определить, растет задержка доставки сообщений или остается прежней. Растущая задержка может указывать на проблему с определенной конечной точкой, поэтому рекомендуется проверить работоспособность этой конечной точки. Эти метрики маршрутизации также имеют измерения , которые предоставляют сведения о метрике, такие как тип конечной точки, конкретное имя конечной точки и причина, по которой сообщение не было доставлено.
Журналы ресурсов для любых операционных проблем
Просмотрите журналы ресурсов Routes, чтобы получить дополнительные сведения о маршрутизации и операциях конечных точек, или определите ошибки и соответствующие коды ошибок, чтобы лучше понять проблему. Например, имя операции RouteEvaluationError в журнале указывает, что маршрут не может быть оценен из-за проблемы с форматом сообщения. Используйте советы, предоставленные для конкретных имен операций , чтобы устранить проблему. Если событие регистрируется как ошибка, журнал также предоставляет дополнительные сведения о причине сбоя оценки. Например, если имя операции — EndpointUnhealthy, код ошибки 403004 указывает на то, что в конечной точке закончилось место.
Работоспособность конечной точки
Используйте REST API Get Endpoint Health для получения информации о состоянии работоспособности конечных точек. Этот API также предоставляет сведения о последней успешной отправке сообщения в конечную точку, последней известной ошибке, времени последней известной ошибки и последней попытке отправки для этой конечной точки. Используйте возможное средство устранения рисков, предусмотренное для конкретной последней известной ошибки.
Я внезапно перестал получать сообщения на встроенной конечной точке
Чтобы устранить эту проблему, проанализируйте следующие сведения.
Был ли создан новый маршрут?
После создания маршрута данные перестают поступать к встроенной конечной точке, если маршрут к этой конечной точке не будет создан. Чтобы сообщения продолжали поступать во встроенную конечную точку при добавлении нового маршрута, настройте маршрут к конечной точке событий .
Был ли отключен резервный маршрут?
Резервный маршрут отправляет все сообщения, которые не удовлетворяют ни одному из условий запроса ни на одном из существующих маршрутов, во встроенные концентраторы событий (сообщения/события), совместимые с концентраторами событий. Если маршрутизация сообщений включена, можно включить возможность резервного маршрута. Если маршруты к встроенной конечной точке отсутствуют и резервный маршрут включен, на встроенную конечную точку отправляются только сообщения, которые не соответствуют условиям запроса на маршрутах. Кроме того, если все существующие маршруты удалены, необходимо включить резервный маршрут для получения всех данных на встроенной конечной точке.
Вы можете включить или отключить резервный маршрут на портале Azure с помощью колонки Маршрутизация сообщений для Центра Интернета вещей. Вы также можете использовать Azure Resource Manager для FallbackRouteProperties , чтобы использовать пользовательскую конечную точку для резервного маршрута.
Последние известные ошибки для конечных точек маршрутизации Центра Интернета вещей
Функция "Получить работоспособность конечной точки " в REST API предоставляет сведения о состоянии работоспособности конечных точек и последней известной ошибке, чтобы определить причину, по которой конечная точка не работоспособна. В этой таблице перечислены наиболее распространенные ошибки.
Последняя известная ошибка | Описание/когда возникает | Возможные меры по устранению рисков |
---|---|---|
Временный | Произошла временная ошибка, и Центр Интернета вещей повторит операцию. | Просматривайте журналы ресурсов маршрутов. |
Внутренняя ошибка | Произошла ошибка при доставке сообщения на конечную точку. | Эта ошибка является внутренним исключением, но также обратите внимание на журналы ресурсов маршрутов. |
Не авторизовано | Центр Интернета вещей не авторизован для отправки сообщений в указанную конечную точку. | Убедитесь, что строка подключения актуальна для конечной точки. Если он изменился, рассмотрите возможность обновления в Центре Интернета вещей. Если конечная точка использует управляемое удостоверение, убедитесь, что субъект Центра Интернета вещей имеет необходимые разрешения на целевой объект. |
Задушил | Центр Интернета вещей регулируется во время записи сообщений в конечную точку. | Просмотрите ограничения регулирования для затронутой конечной точки. При необходимости измените конфигурации конечной точки для вертикального масштабирования. |
Таймаут | Время ожидания операции истекло. | Повторите операцию. |
Не найдено | Целевой ресурс не существует. | Убедитесь, что целевой ресурс существует. |
Контейнер не найден | Контейнер для хранения не существует. | Убедитесь, что контейнер для хранения существует. |
Контейнер отключен | Контейнер для хранения отключен. | Убедитесь, что контейнер для хранения включен. |
MaxMessageSizeExceeded | Маршрутизация сообщений имеет ограничение на размер сообщения в 256 Кб. Размер маршрутизируемого сообщения превысил это ограничение. | Проверьте, можно ли уменьшить размер сообщения за счет использования меньшего количества свойств приложения или меньшего количества обогащенных сообщений. |
PartitioningAndDuplicateDetectionNotSupported | Возможно, в служебной шине не включено обнаружение дубликатов. | Отключите обнаружение повторяющихся данных из служебной шины или рассмотрите возможность использования сущности без обнаружения повторяющихся данных. |
SessionfulEntityNotSupported | В служебной шине могут быть не включены сеансы. | Отключите сеанс из служебной шины или рассмотрите возможность использования сущности без сеансов. |
NoMatchingSubscriptionsForMessage | Подписка на написание сообщений по теме служебной шины отсутствует. | Создайте подписку на сообщения Центра Интернета вещей, на которые будут направляться сообщения. |
EndpointExternallyDisabled (Конечное устройствоExternallyDisabled) | Конечная точка не находится в активном состоянии, поэтому Центр Интернета вещей может отправлять ей сообщения. | Включите конечную точку, чтобы вернуть ее в активное состояние. |
ПревышениеDeviceMaximumQueueDepth | Достигнут предел размера сервисной шины. | Рассмотрите возможность удаления сообщений из целевых Центров событий, чтобы разрешить прием новых сообщений в Центры событий. |
Маршруты журналов ресурсов
Ниже приведены имена операций и коды ошибок, зарегистрированные в журналах ресурсов маршрутов.
Названия операций
Имя операции | Уровень | Описание |
---|---|---|
Оценка неопределенногоМаршрута | Информация | Сообщение не может быть оценено с помощью условия дарения. Например, если свойство в условии запроса маршрута отсутствует в сообщении. Узнайте больше о синтаксисе запроса маршрутизации. |
Ошибка RouteEvaluationError | Ошибка | Произошла ошибка при оценке сообщения из-за проблемы с форматом сообщения. Например, эта ошибка будет регистрироваться, если в сообщении не указана кодировка содержимого или недопустим тип содержимого. Они должны быть установлены в свойствах системы. |
DroppedMessage | Ошибка | Сообщение было отброшено и не маршрутизировано. Это может быть связано с такими причинами, как сообщение не соответствует ни одному запросу маршрутизации или конечная точка не работает, и сообщение не может быть доставлено после нескольких попыток. Мы рекомендуем получить дополнительные сведения о конечной точке с помощью REST API для получения работоспособности конечной точки. |
Конечная точкаНеработоспособная | Ошибка | Конечная точка не принимает сообщения от Центра Интернета вещей, и Центр Интернета вещей пытается повторно отправить сообщения. Мы рекомендуем наблюдать за последней известной ошибкой с помощью REST API get endpoint health. |
Конечная точкаМертва | Ошибка | Endpoint не принимает сообщения из Центра Интернета вещей уже более часа. Мы рекомендуем наблюдать за последней известной ошибкой с помощью REST API get endpoint health. |
EndpointHealthy (EndpointHealthy) | Информация | Конечная точка работоспособна и получает сообщения из Центра Интернета вещей. Это сообщение не регистрируется постоянно, а регистрируется только тогда, когда конечная точка снова становится работоспособной. Это сообщение означает, что Центр Интернета вещей не смог отправить сообщения в конечную точку, но теперь конечная точка работоспособна. |
Осиротевшее сообщение | Информация | Сообщение не соответствует ни одному маршруту. |
InvalidMessage (Недействительное сообщение) | Ошибка | Сообщение недопустимо из-за несовместимости с конечной точкой. Мы рекомендуем проверить конфигурации конечной точки. |
Операции UndefinedRouteEvaluation, RouteEvaluationError и OrphanedMessage регулируются и регистрируются не чаще одного раза в минуту для каждого Центра Интернета вещей.
Распространенные коды ошибок
Код ошибки | Описание |
---|---|
401002 | Несанкционированный доступ к Центру Интернета вещей |
413001 | Сообщение слишком большого размера |
403004 | Превышена максимальная длина очереди устройства |
503008 | Получение ссылки регулируется |
500000 | Общая ошибка сервера |
401 | Не авторизовано |
503 (Сервис временно недоступен) | Служба недоступна |
500001 | Ошибка сервера |
400103 | Недопустимая кодировка или тип контента |
404001 | Устройство не найдено |
Дальнейшие действия
Если вам нужна дополнительная помощь, вы можете обратиться к экспертам Azure на форумах Microsoft Q&A и Stack Overflow. Кроме того, можно зарегистрировать обращение в службу поддержки Azure. Перейдите на сайт поддержки Azure и выберите Получить поддержку.