Подстановочные имена тем и получение сообщений из всех тем - PullRequest
0 голосов
/ 08 ноября 2019

Мы используем AWS IoT.

У нас есть предопределенные темы (+ / device /), где устройства публикуют сообщения.

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

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

Я пытался создавать правила IoT с использованием подстановочных имен тем, таких как (+ / *или / ), но ни одна из этих групповых тем, похоже, не работает.

Существует ли какое-либо шаблонное имя темы, которое я могу использовать для захвата сообщений из всех тем?

Или есть какой-нибудь способ сбросить все сообщения по всем темам где-нибудь в DynamoDB или S3 и рассчитать количество сообщений от отдельных устройств за определенный период времени?

1 Ответ

1 голос
/ 09 ноября 2019

Я пытался создать правила IoT с использованием подстановочных имен тем, таких как (+ / * или /), но ни одна из этих подстановочных тем, похоже, не работает.

Есть ли подстановочные знаки тем, которые яможно использовать для захвата сообщений из всех тем?

+ и # - соответствующие шаблоны для правил AWS IoT. См. https://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-from.html

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

SELECT * FROM '#'

Или есть ли способ вывести все сообщения на всетемы где-нибудь в DynamoDB или S3 и рассчитать количество сообщений от отдельных устройств за определенный период времени?

Один из подходов заключается в создании правила на основе указанного выше, а также в каждом сообщении передается идентификатор клиента (с помощью функции clientid () ). Действие для этого правила может записать идентификатор клиента в DynamoDB или S3. Затем эта информация будет доступна для ваших расчетов.

Альтернативный подход может заключаться в записи сообщений и клиентов в поток данных Kinesis и использовании Kinesis Data Analytics для обнаружения ошибочных устройств.

...