AWS IoT и SQS: как получить тему IoT и завершить полезную нагрузку JSON при перенаправлении на SQS в AWS - PullRequest
0 голосов
/ 23 октября 2019

Я использую AWS IoT и создал правило, которое перенаправляет данные, полученные по этой конкретной теме, в очередь SQS.

Оператор SQL для этого правила имеет следующий вид -

SELECT *, topic() AS topic FROM '+/topicname'

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

Когда я использую вышеприведенное правило, лямбда корректно запускается.

Я анализирую sqsEvent.Records [0] .Body для извлечения полезной нагрузки иназвание темы.

Когда я использую это правило, я могу извлечь название темы. Но полная полезная нагрузка JSON не получена. В лямбда-функции принимается только частичная полезная нагрузка.

Размер полезной нагрузки JSON составляет около 700 байтов.

Я думаю, что максимальный размер сообщения для очереди SQS составляет около 256 КБ. .

Так что я не уверен, почему полезная нагрузка урезается.

Есть ли какие-либо проблемы с оператором SQL в правиле IoT?

Если я использую приведенный ниже оператор SQL, я получаю полную полезную нагрузку, но не могу извлечь название темы.

SELECT * FROM '+/topicname'

Есть ли другой способ извлечь название темы?

...