Как отправить данные из UDF в базу данных Cosmos в Azure Digital Twin? - PullRequest
1 голос
/ 20 марта 2019

Настройка до сих пор: Я создал пространства. На верхнем уровне у меня есть ресурс центра IOT. В двух местах я прикрепил к нему устройства вместе с датчиками. Я создал Matcher для датчика температуры вместе с UDF, который похож на документацию . Я также назначил разрешения для UDF. Чтобы отправить данные в концентратор IOT, я также получил строку подключения устройства для образца dotnet

Список проблем, с которыми я сталкиваюсь:

  1. Когда я пытаюсь запустить пример dotnet , я вижу, что он может достичь UDF (проверил его с помощью отладки), но в UDF он не может получить доступ к переменной телеметрии как указано в документации . Ошибка, которую он показывает:

Неожиданное исключение произошло при обработке пользовательской функции. Обратитесь в службу поддержки и предоставьте идентификатор корреляции для запроса.

  1. Я создал конечную точку для отправки необработанной телеметрии в концентратор событий. Но я хочу отправить обработанные данные из UDF в космос db. Является ли это возможным? Если да, то как?

1 Ответ

2 голосов
/ 26 марта 2019

Спасибо за вопрос и за поддержку ... для # 2 вы можете сделать это, выполнив метод уведомления в вашей UDF. Вы можете настроить выход на другие конечные точки, такие как Event Hub, Event Grid или Service Bus через диспетчера конечных точек. Вы должны настроить конечную точку через / endpoint API, а затем в UDF вы можете указать, что вы хотите отправить и какие изменения. Подробнее о событиях и конечных точках вы можете посмотреть здесь: https://docs.microsoft.com/en-us/azure/digital-twins/how-to-egress-endpoints

Здесь также есть ссылка, чтобы узнать больше об этом подключении Digital Twins к приложениям логики: https://docs.microsoft.com/en-us/azure/digital-twins/tutorial-facilities-events, который будет аналогичен шаблону отправки данных в Cosmos DB.

Что касается первого, я не уверен, что вы все еще видите это. Какой регион? У вас есть идентификатор корреляции, который вы можете передать? Также, если вы включаете журналы и смотрите в Azure Monitor, есть ли там детали?

...