Невозможно получить результаты от простого задания

#azure #beagleboneblack #node-red #azure-stream-analytics #azure-iot-hub

#лазурный #beagleboneblack #узел-красный #azure-stream-аналитика #azure-iot-хаб

Вопрос:

Я пытаюсь получить простые данные JSON из моего BeagleBoneBlack в мою базу данных SQL Azure. Я не запустил отправку этого сообщения в центр интернета вещей:

 {   "deviceId": "device001",   
"key": "LvZdO3O/W5AnuD5zddEHZtCTDmCZwtlDeuN86LSI==",   
"protocol": "amqp",   "data": "{data1: 25, data2: 20}" }
 

Вот документация о том, почему сообщение форматируется таким образом: http://flows.nodered.org/node/node-red-contrib-azure-iot-hub

Кажется, я получаю сообщения от IoT Hub без проблем. Я могу отслеживать количество полученных сообщений, но, возможно, я их не вижу.

Итак, здесь вступает в действие потоковая аналитика. Я протестировал как свои входные данные (концентратор Интернета вещей), так и выходные данные (база данных SQL).

Это запрос, который я выполняю:

 SELECT
    *
INTO
    [dbOutput]
FROM
    [theoracareBBBinput]
 

И моя таблица настроена на получение data1 и data2, подобных их отправке. Я могу запустить задание без проблем, но в базе данных ничего не сохраняется. Между тем я знаю, что сообщения поступают из центра Интернета вещей.

Когда я загружаю образцы данных, мой запрос возвращает результаты точно так, как ожидалось.

Я пытался «выборку данных из входных данных», но каждый раз, когда я пытаюсь, я получаю «Произошла ошибка при обработке вашего запроса. Пожалуйста, повторите попытку через несколько минут.

Что я здесь упускаю из виду?

Комментарии:

1. Не удалось продолжить отправку сообщений в центр интернета вещей, пока вы пытались «извлечь данные из входных данных» ?

2. При запуске задания вы видите какие-либо ошибки в журнале операций? На странице мониторинга вы видите, что какие-либо входные события считываются? Эти два первых шага для отладки таких случаев.

3. Как предположил Виньеш, вам следует проверить наличие ошибок, но это «И моя таблица настроена на получение данных 1 и данных 2, как и при их отправке». из вашего вопроса следует, что вам может потребоваться удалить вложенные данные 1 и данные 2 из данных поля, которые являются записью. Что-то вроде этого: SELECT i.data.data1, i.data.data2, i.* INTO [dbOutput] FROM [theoracareBBBinput] as i . Если вы просто SELECT *... , схема вывода не будет содержать полей с именами data1 и data2.