Правило подстановки темы
Описание
Заменяет правило. Вы должны указать все параметры для нового правила. Создание правил — действие уровня администратора. Любой пользователь, имеющий разрешение на создание правил, сможет получить доступ к данным, обработанным правилом.
Требуется разрешение на доступ к действию ReplaceTopicRule.
См. также: Документацию API AWS
Синтаксис
replace-topic-rule
--rule-name <value>
--topic-rule-payload <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--rule-name (строка)
--topic-rule-payload (структура)
Загрузка правила.
sql -> (строка)
description -> (строка)
actions -> (список)
Действия, связанные с правилом.
(структура)
Описание действий, связанных с правилом.
dynamoDB -> (структура)
Запись в таблицу DynamoDB.
tableName -> (строка)
roleArn -> (строка)
operation -> (строка)
${operation} , но подстановка должна привести к одному из следующих вариантов: INSERT , UPDATE или DELETE .hashKeyField -> (строка)
hashKeyValue -> (строка)
hashKeyType -> (строка)
rangeKeyField -> (строка)
rangeKeyValue -> (строка)
rangeKeyType -> (строка)
payloadField -> (строка)
dynamoDBv2 -> (структура)
Запись в таблицу DynamoDB. Это новая версия действия DynamoDB. Она позволяет записывать каждый атрибут в загрузке сообщения MQTT в отдельный столбец DynamoDB.
roleArn -> (строка)
putItem -> (структура)
Указывает таблицу DynamoDB, в которую будут записаны данные сообщения. Например:
{ "dynamoDBv2": { "roleArn": "aws:iam:12341251:my-role" "putItem": { "tableName": "my-table" } } }Каждый атрибут в загрузке сообщения будет записан в отдельный столбец в базе данных DynamoDB.
tableName -> (строка)
lambda -> (структура)
Вызов функции Lambda.
functionArn -> (строка)
sns -> (структура)
Публикация в тему Amazon SNS.
targetArn -> (строка)
roleArn -> (строка)
messageFormat -> (строка)
sqs -> (структура)
Публикация в очередь Amazon SQS.
roleArn -> (строка)
queueUrl -> (строка)
useBase64 -> (булево)
kinesis -> (структура)
Запись данных в поток Amazon Kinesis.
roleArn -> (строка)
streamName -> (строка)
partitionKey -> (строка)
republish -> (структура)
Публикация в другую тему MQTT.
roleArn -> (строка)
topic -> (строка)
qos -> (целое число)
headers -> (структура)
Информация о заголовках MQTT версии 5.0. Дополнительную информацию см. в MQTT в руководстве разработчика Amazon Web Services IoT Core.
payloadFormatIndicator -> (строка)
Enum строковое значение, указывающее, отформатирована ли загрузка как UTF-8.
Допустимые значения UNSPECIFIED_BYTES и UTF8_DATA .
Дополнительную информацию см. в указателе формата загрузки из спецификации MQTT версии 5.0.
Поддерживает шаблоны подстановок.
contentType -> (строка)
Строка UTF-8, описывающая содержимое сообщения публикации.
Дополнительную информацию см. в разделе Тип содержимого из спецификации MQTT версии 5.0.
Поддерживает шаблоны подстановок.
responseTopic -> (строка)
Строка UTF-8, используемая в качестве имени темы для сообщения ответа. Тема ответа используется для описания темы, в которую получатель должен опубликовать сообщение в рамках обмена запросом-ответом. Тема не должна содержать символов подстановки.
Дополнительную информацию см. в теме ответа из спецификации MQTT версии 5.0.
Поддерживает шаблоны подстановок.
correlationData -> (строка)
Данные двоичного кода в формате Base64, используемые отправителем сообщения запроса для идентификации запроса, к которому относится сообщение ответа при получении.
Дополнительную информацию см. в разделе Данные корреляции из спецификации MQTT версии 5.0.
Примечание
Эти двоичные данные должны быть закодированы в Base64.Поддерживает шаблоны подстановок.
messageExpiry -> (строка)
Определенное пользователем целое число, которое сохранит сообщение в брокере сообщений в течение указанного периода времени, чтобы гарантировать, что сообщение истечет, если оно больше не актуально для подписчика. Значение messageExpiry обозначает количество секунд до истечения срока действия. Дополнительную информацию об ограничениях messageExpiry см. в руководстве Amazon Web Services по брокеру сообщений и ограничениям протоколов Amazon Web Services.
Поддерживает шаблоны подстановок.
userProperties -> (список)
Массив пар ключ-значение, которые вы определяете в заголовке MQTT5.
(структура)
Пара ключ-значение, которую вы определяете в заголовке. И ключ, и значение являются либо строковыми литералами, либо допустимыми шаблонами подстановок.
key -> (строка)
UserProperty .value -> (строка)
UserProperty .s3 -> (структура)
Запись в ведро Amazon S3.
roleArn -> (строка)
bucketName -> (строка)
key -> (строка)
cannedAcl -> (строка)
firehose -> (структура)
Запись в поток Amazon Kinesis Firehose.
roleArn -> (строка)
deliveryStreamName -> (строка)
separator -> (строка)
batchMode -> (булево)
Доставлять ли поток Kinesis Data Firehose как пакет, используя ` PutRecordBatch https://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecordBatch.html`__ . Значение по умолчанию false .
Если batchMode равно true , и SQL-запрос правила вычисляет массив, каждый элемент массива формирует одну запись в запросе ` PutRecordBatch https://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecordBatch.html`__ . Результирующий массив не может содержать более 500 записей.
cloudwatchMetric -> (структура)
Создание метрики CloudWatch.
roleArn -> (строка)
metricNamespace -> (строка)
metricName -> (строка)
metricValue -> (строка)
metricUnit -> (строка)
metricTimestamp -> (строка)
cloudwatchAlarm -> (структура)
Изменение состояния сигнализации CloudWatch.
roleArn -> (строка)
alarmName -> (строка)
stateReason -> (строка)
stateValue -> (строка)
cloudwatchLogs -> (структура)
Отправка данных в CloudWatch Logs.
roleArn -> (строка)
logGroupName -> (строка)
batchMode -> (булево)
true или false (по умолчанию) .elasticsearch -> (структура)
Запись данных в домен Amazon OpenSearch Service.
Примечание
ДействиеElasticsearch может использоваться только существующими действиями правил. Чтобы создать новое действие правила или обновить существующее действие правила, используйте действие правила OpenSearch. Дополнительная информация представлена в OpenSearchAction.roleArn -> (строка)
endpoint -> (строка)
index -> (строка)
type -> (строка)
id -> (строка)
salesforce -> (структура)
Отправка сообщения в поток ввода данных Salesforce IoT Cloud.
token -> (строка)
url -> (строка)
iotAnalytics -> (структура)
Отправляет данные сообщения в канал IoT Analytics.
channelArn -> (строка)
channelName -> (строка)
batchMode -> (булево)
Обрабатывать ли действие как пакет. Значение по умолчанию - false.
Когда batchMode равно true, и SQL-запрос правила возвращает массив, каждый элемент массива передаётся как отдельное сообщение при передаче через ` BatchPutMessage https://docs.aws.amazon.com/iotanalytics/latest/APIReference/API_BatchPutMessage.html`__ в канал IoT Analytics. Результирующий массив не может содержать более 100 сообщений.
roleArn -> (строка)
iotEvents -> (структура)
Отправляет вход в детектор IoT Events.
inputName -> (строка)
messageId -> (строка)
Идентификатор сообщения. Значение по умолчанию messageId — новый UUID.
Когда batchMode равно true, вы не можете указать messageId — будет присвоен новый UUID.
Укажите значение для этого свойства, чтобы убедиться, что только один вход (сообщение) с заданным messageId будет обработан детектором IoT Events.
batchMode -> (булево)
Обрабатывать ли действия события как пакет. Значение по умолчанию - false.
Когда batchMode равно true, вы не можете указать messageId.
Когда batchMode равно true, и SQL-запрос правила возвращает массив, каждый элемент массива обрабатывается как отдельное сообщение при отправке в IoT Events с помощью вызова ` BatchPutMessage https://docs.aws.amazon.com/iotevents/latest/apireference/API_iotevents-data_BatchPutMessage.html`__ . Результирующий массив не может содержать более 10 сообщений.
roleArn -> (строка)
iotSiteWise -> (структура)
Отправляет данные из MQTT-сообщения, которое вызвало правило, в свойства активов IoT SiteWise.
putAssetPropertyValueEntries -> (список)
Список записей значений свойств актива.
(структура)
Запись значения свойства актива, содержащая следующую информацию.
entryId -> (строка)
assetId -> (строка)
propertyAlias, либо и aliasId, и propertyId. Поддерживает шаблоны подстановки.propertyId -> (строка)
propertyAlias, либо и aliasId, и propertyId. Поддерживает шаблоны подстановки.propertyAlias -> (строка)
propertyAlias, либо и aliasId, и propertyId. Поддерживает шаблоны подстановки.propertyValues -> (список)
Список значений свойств для вставки, каждый из которых содержит информацию о времени, качестве и значении (TQV).
(структура)
Запись значения свойства актива, содержащая следующую информацию.
value -> (структура)
Значение свойства актива.
stringValue -> (строка)
integerValue -> (строка)
doubleValue -> (строка)
booleanValue -> (строка)
true или false) записи значения. Поддерживает шаблоны подстановки.timestamp -> (структура)
Отметка времени значения свойства актива.
timeInSeconds -> (строка)
offsetInNanos -> (строка)
quality -> (строка)
GOOD, BAD или UNCERTAIN.roleArn -> (строка)
"Action": "iotsitewise:BatchPutAssetPropertyValue"). Политика доверия может ограничить доступ к определенным путям иерархии актива.stepFunctions -> (структура)
Запускает выполнение машины состояний Step Functions.
executionNamePrefix -> (строка)
stateMachineName -> (строка)
roleArn -> (строка)
timestream -> (структура)
Действие правила Timestream записывает атрибуты (измерения) из MQTT-сообщения в таблицу Amazon Timestream. Дополнительную информацию см. в документации по действию правила Timestream.
roleArn -> (строка)
databaseName -> (строка)
tableName -> (строка)
dimensions -> (список)
Метаданные атрибутов временного ряда, которые записываются в каждой записи измерения.
(структура)
Метаданные атрибуты временного ряда, которые записываются в каждой записи измерения.
name -> (строка)
Имя измерения метаданных. Это имя столбца в записи таблицы базы данных Amazon Timestream.
Имена измерений не могут быть: measure_name, measure_value или time. Эти имена зарезервированы. Имена измерений не могут начинаться с ts_ или measure_value и не могут содержать символ двоеточия (:).
value -> (строка)
timestamp -> (структура)
Указывает определяемое приложением значение для замены значения по умолчанию, присвоенного отметке времени записи Timestream в столбце time.
Вы можете использовать это свойство для указания значения и точности отметки времени записи Timestream. Вы можете указать значение из набора данных сообщения или значение, вычисленное с помощью шаблона подстановки.
Если опущено, действие правила темы присваивает отметку времени в миллисекундах в момент обработки правила.
value -> (строка)
unit -> (строка)
Точность значения отметки времени, полученного в результате выражения, описанного в value.
Допустимые значения: SECONDS | MILLISECONDS | MICROSECONDS | NANOSECONDS. По умолчанию MILLISECONDS.
http -> (структура)
Отправляет данные на конечную точку HTTPS.
url -> (строка)
confirmationUrl. Если это новый пункт назначения, новый TopicRuleDestination создаётся, если это возможно.confirmationUrl -> (строка)
headers -> (список)
HTTP-заголовки для отправки вместе с данными сообщения.
(структура)
Заголовок действия HTTP.
key -> (строка)
value -> (строка)
auth -> (структура)
Метод аутентификации для использования при отправке данных на HTTPS-конечную точку.
sigv4 -> (структура)
Используйте авторизацию Sig V4. Дополнительную информацию см. в разделе Процесс подписи версии 4 подписи .
signingRegion -> (строка)
serviceName -> (строка)
roleArn -> (строка)
kafka -> (структура)
Отправка сообщений в кластер Amazon Managed Streaming for Apache Kafka (Amazon MSK) или в самоуправляемый кластер Apache Kafka.
destinationArn -> (строка)
TopicRuleDestination действия Kafka.topic -> (строка)
key -> (строка)
partition -> (строка)
clientProperties -> (массив)
Свойства клиента-производителя Apache Kafka.
key -> (строка)
value -> (строка)
headers -> (список)
Список заголовков Kafka, которые вы указываете.
(структура)
Определяет заголовки Kafka с помощью пар ключ-значение при создании действия Kafka правила. Вы можете использовать эти заголовки для маршрутизации данных от клиентов IoT до кластеров Kafka без изменения набора данных сообщения.
Дополнительную информацию о действии правила Kafka см. в разделе Apache Kafka.
key -> (строка)
value -> (строка)
openSearch -> (структура)
Запись данных в домен Amazon OpenSearch Service.
roleArn -> (строка)
endpoint -> (строка)
index -> (строка)
type -> (строка)
id -> (строка)
location -> (структура)
Действие правила Amazon Location Service отправляет обновления местоположения устройства из сообщения MQTT в ресурс трекера Amazon Location.
roleArn -> (строка)
trackerName -> (строка)
deviceId -> (строка)
timestamp -> (структура)
Время, когда были получены данные о местоположении. Значение по умолчанию — время обработки сообщения MQTT.
value -> (строка)
unit -> (строка)
Точность значения метки времени, полученного в результате выражения, описанного в value.
Допустимые значения: SECONDS | MILLISECONDS | MICROSECONDS | NANOSECONDS. Значение по умолчанию — MILLISECONDS.
latitude -> (строка)
longitude -> (строка)
ruleDisabled -> (логическое)
awsIotSqlVersion -> (строка)
errorAction -> (структура)
Действие, которое нужно выполнить при возникновении ошибки.
dynamoDB -> (структура)
Запись в таблицу DynamoDB.
tableName -> (строка)
roleArn -> (строка)
operation -> (строка)
${operation}, но подстановка должна привести к одному из следующих значений: INSERT, UPDATE или DELETE.hashKeyField -> (строка)
hashKeyValue -> (строка)
hashKeyType -> (строка)
rangeKeyField -> (строка)
rangeKeyValue -> (строка)
rangeKeyType -> (строка)
payloadField -> (строка)
dynamoDBv2 -> (структура)
Запись в таблицу DynamoDB. Это новая версия действия DynamoDB. Она позволяет записывать каждый атрибут в полезной нагрузке MQTT-сообщения в отдельный столбец DynamoDB.
roleArn -> (строка)
putItem -> (структура)
Указывает таблицу DynamoDB, в которую будут записаны данные сообщения. Например:
{ "dynamoDBv2": { "roleArn": "aws:iam:12341251:my-role" "putItem": { "tableName": "my-table" } } }Каждый атрибут в полезной нагрузке сообщения будет записан в отдельный столбец в базе данных DynamoDB.
tableName -> (строка)
lambda -> (структура)
Вызов функции Lambda.
functionArn -> (строка)
sns -> (структура)
Публикация в тему Amazon SNS.
targetArn -> (строка)
roleArn -> (строка)
messageFormat -> (строка)
sqs -> (структура)
Публикация в очередь Amazon SQS.
roleArn -> (строка)
queueUrl -> (строка)
useBase64 -> (булево)
kinesis -> (структура)
Запись данных в поток Amazon Kinesis.
roleArn -> (строка)
streamName -> (строка)
partitionKey -> (строка)
republish -> (структура)
Публикация в другую MQTT-тему.
roleArn -> (строка)
topic -> (строка)
qos -> (целое число)
headers -> (структура)
Информация заголовков MQTT версии 5.0. Для получения дополнительной информации, см. MQTT в руководстве разработчика Amazon Web Services IoT Core.
payloadFormatIndicator -> (строка)
Enum строковое значение, указывающее, отформатирована ли полезная нагрузка как UTF-8.
Допустимые значения: UNSPECIFIED_BYTES и UTF8_DATA.
Для получения дополнительной информации, см. Указатель формата полезной нагрузки в спецификации MQTT версии 5.0.
Поддерживает шаблоны подстановки.
contentType -> (строка)
Строка UTF-8, описывающая содержимое сообщения публикации.
Для получения дополнительной информации, см. Тип содержимого в спецификации MQTT версии 5.0.
Поддерживает шаблоны подстановки.
responseTopic -> (строка)
Строка UTF-8, используемая в качестве имени темы ответа для сообщения ответа. Тема ответа используется для описания темы, в которую получатель должен опубликовать сообщение в рамках потока запрос-ответ. Тема не должна содержать символов подстановки.
Для получения дополнительной информации, см. Тему ответа в спецификации MQTT версии 5.0.
Поддерживает шаблоны подстановки.
correlationData -> (строка)
Данные двоичного формата, закодированные в Base64, которые отправитель сообщения запроса использует для идентификации запроса, для которого предназначено сообщение ответа при получении.
Для получения дополнительной информации, см. Данные корреляции в спецификации MQTT версии 5.0.
Примечание
Эти двоичные данные должны быть закодированы в Base64.Поддерживает шаблоны подстановки.
messageExpiry -> (строка)
Определяемое пользователем целое число, которое сохранит сообщение в посреднике сообщений в течение указанного времени, чтобы обеспечить истечение срока действия сообщения, если оно больше не актуально для подписчика. Значение messageExpiry представляет количество секунд до истечения срока действия. Для получения дополнительной информации о ограничениях messageExpiry, см. лимиты и квоты посредника сообщений и протокола Amazon Web Services IoT Core в справочном руководстве Amazon Web Services.
Поддерживает шаблоны подстановки.
userProperties -> (список)
Массив пар ключ-значение, которые вы определяете в заголовке MQTT5.
(структура)
Пара ключ-значение, которую вы определяете в заголовке. И ключ, и значение — это либо литеральные строки, либо допустимые шаблоны подстановки.
key -> (строка)
UserProperty.value -> (строка)
UserProperty.s3 -> (структура)
Запись в ведро Amazon S3.
roleArn -> (строка)
bucketName -> (строка)
key -> (строка)
cannedAcl -> (строка)
firehose -> (структура)
Запись в поток Amazon Kinesis Firehose.
roleArn -> (строка)
deliveryStreamName -> (строка)
separator -> (строка)
batchMode -> (булево)
Доставлять ли поток Kinesis Data Firehose как пакет с использованием ` PutRecordBatch https://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecordBatch.html`__ . Значение по умолчанию — false.
Если batchMode равно true и SQL-запрос правила оценивается как массив, каждый элемент массива формирует одну запись в запросе ` PutRecordBatch https://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecordBatch.html`__ . Результирующий массив не может содержать более 500 записей.
cloudwatchMetric -> (структура)
Запись метрики CloudWatch.
roleArn -> (строка)
metricNamespace -> (строка)
metricName -> (строка)
metricValue -> (строка)
metricUnit -> (строка)
metricTimestamp -> (строка)
cloudwatchAlarm -> (структура)
Изменение состояния сигнализации CloudWatch.
roleArn -> (строка)
alarmName -> (строка)
stateReason -> (строка)
stateValue -> (строка)
cloudwatchLogs -> (структура)
Отправка данных в CloudWatch Logs.
roleArn -> (строка)
logGroupName -> (строка)
batchMode -> (булево)
true или false (по умолчанию).elasticsearch -> (структура)
Запись данных в домен Amazon OpenSearch Service.
Примечание
ДействиеElasticsearch может использоваться только существующими действиями правил. Чтобы создать новое действие правила или обновить существующее действие правила, используйте действие правила OpenSearch. Для получения дополнительной информации, см. OpenSearchAction.roleArn -> (строка)
endpoint -> (строка)
index -> (строка)
type -> (строка)
id -> (строка)
salesforce -> (структура)
Отправка сообщения в Salesforce IoT Cloud Input Stream.
token -> (строка)
url -> (строка)
iotAnalytics -> (структура)
Отправляет данные сообщения в канал IoT Analytics.
channelArn -> (строка)
channelName -> (строка)
batchMode -> (булево)
Обрабатывать ли действие как пакет. Значение по умолчанию — false.
Если batchMode равно true, а SQL-запрос правила возвращает массив, каждый элемент массива будет передан как отдельное сообщение при передаче через ` BatchPutMessage https://docs.aws.amazon.com/iotanalytics/latest/APIReference/API_BatchPutMessage.html`__ в канал IoT Analytics. Результирующий массив не может содержать более 100 сообщений.
roleArn -> (строка)
iotEvents -> (структура)
Отправляет входные данные в детектор IoT Events.
inputName -> (строка)
messageId -> (строка)
Идентификатор сообщения. Значение по умолчанию messageId — новое значение UUID.
Если batchMode равно true, вы не можете указать messageId — будет назначено новое значение UUID.
Присвоение значения этому свойству гарантирует, что только один вход (сообщение) с заданным messageId будет обработан детектором IoT Events.
batchMode -> (булево)
Обрабатывать ли действия события как пакет. Значение по умолчанию — false.
Если batchMode равно true, вы не можете указать messageId.
Если batchMode равно true, а SQL-запрос правила возвращает массив, каждый элемент массива будет обрабатываться как отдельное сообщение при отправке в IoT Events с помощью вызова ` BatchPutMessage https://docs.aws.amazon.com/iotevents/latest/apireference/API_iotevents-data_BatchPutMessage.html`__. Результирующий массив не может содержать более 10 сообщений.
roleArn -> (строка)
iotSiteWise -> (структура)
Отправляет данные из MQTT-сообщения, вызвавшего правило, в свойства активов IoT SiteWise.
putAssetPropertyValueEntries -> (список)
Список записей значений свойств активов.
(структура)
Запись значения свойства актива, содержащая следующую информацию.
entryId -> (строка)
assetId -> (строка)
propertyAlias, либо и aliasId, и propertyId. Поддерживает шаблоны подстановки.propertyId -> (строка)
propertyAlias, либо и aliasId, и propertyId. Поддерживает шаблоны подстановки.propertyAlias -> (строка)
propertyAlias, либо и aliasId, и propertyId. Поддерживает шаблоны подстановки.propertyValues -> (список)
Список значений свойств для вставки, каждый из которых содержит информацию о времени, качестве и значении (TQV).
(структура)
Запись значения свойства актива, содержащая следующую информацию.
value -> (структура)
Значение свойства актива.
stringValue -> (строка)
integerValue -> (строка)
doubleValue -> (строка)
booleanValue -> (строка)
true или false) записи значения. Поддерживает шаблоны подстановки.timestamp -> (структура)
Отметка времени значения свойства актива.
timeInSeconds -> (строка)
offsetInNanos -> (строка)
quality -> (строка)
GOOD, BAD или UNCERTAIN.roleArn -> (строка)
"Action": "iotsitewise:BatchPutAssetPropertyValue"). Политика доверия может ограничивать доступ к определенным путям иерархии активов.stepFunctions -> (структура)
Запускает выполнение машины состояний Step Functions.
executionNamePrefix -> (строка)
stateMachineName -> (строка)
roleArn -> (строка)
timestream -> (структура)
Действие правила Timestream записывает атрибуты (меры) из MQTT-сообщения в таблицу Amazon Timestream. Дополнительную информацию см. в документации по действию правила Timestream.
roleArn -> (строка)
databaseName -> (строка)
tableName -> (строка)
dimensions -> (список)
Метаданные атрибуты временного ряда, записываемые в каждую запись меры.
(структура)
Метаданные атрибуты временного ряда, записываемые в каждую запись меры.
name -> (строка)
Имя измерения метаданных. Это имя столбца в записи таблицы базы данных Amazon Timestream.
Измерения не могут быть названы: measure_name, measure_value или time. Эти имена зарезервированы. Имена измерений не могут начинаться с ts_ или measure_value и не могут содержать символ двоеточия (:).
value -> (строка)
timestamp -> (структура)
Указывает определенное приложением значение, которое заменит значение по умолчанию, назначенное отметке времени записи Timestream в столбце time.
Вы можете использовать это свойство для указания значения и точности отметки времени записи Timestream. Вы можете указать значение из полезной нагрузки сообщения или значение, вычисленное шаблоном подстановки.
Если опущен, действие правила темы назначает отметку времени в миллисекундах в момент обработки правила.
value -> (строка)
unit -> (строка)
Точность значения отметки времени, полученного в результате выражения, описанного в value.
Допустимые значения: SECONDS | MILLISECONDS | MICROSECONDS | NANOSECONDS. По умолчанию — MILLISECONDS.
http -> (структура)
Отправить данные на конечную точку HTTPS.
url -> (строка)
confirmationUrl. Если это новый пункт назначения, новый TopicRuleDestination создается, если это возможно.confirmationUrl -> (строка)
headers -> (список)
HTTP-заголовки, которые будут отправлены вместе с данными сообщения.
(структура)
HTTP-заголовок действия.
key -> (строка)
value -> (строка)
auth -> (структура)
Метод аутентификации, который нужно использовать при отправке данных на HTTPS-конечную точку.
sigv4 -> (структура)
Используйте авторизацию Sig V4. Дополнительную информацию см. в Процессе подписи Signature Version 4.
signingRegion -> (строка)
serviceName -> (строка)
roleArn -> (строка)
kafka -> (структура)
Отправить сообщения в Amazon Managed Streaming for Apache Kafka (Amazon MSK) или в автономно управляемый кластер Apache Kafka.
destinationArn -> (строка)
TopicRuleDestination действия Kafka.topic -> (строка)
key -> (строка)
partition -> (строка)
clientProperties -> (карта)
Свойства клиента-производителя Apache Kafka.
key -> (строка)
value -> (строка)
headers -> (список)
Список заголовков Kafka, которые вы указываете.
(структура)
Указывает заголовок Kafka с помощью пар ключ-значение при создании действия Kafka правила. Вы можете использовать эти заголовки для маршрутизации данных от клиентов IoT к кластерам Kafka без изменения полезной нагрузки сообщения.
Дополнительную информацию о действии Kafka правила см. в Apache Kafka.
key -> (строка)
value -> (строка)
openSearch -> (структура)
Запись данных в домен Amazon OpenSearch Service.
roleArn -> (строка)
endpoint -> (строка)
index -> (строка)
type -> (строка)
id -> (строка)
location -> (структура)
Действие правила Amazon Location Service отправляет обновления местоположения устройств из сообщения MQTT в ресурс трекера Amazon Location.
roleArn -> (строка)
trackerName -> (строка)
deviceId -> (строка)
timestamp -> (структура)
Время, когда были взяты данные о местоположении. По умолчанию используется время обработки сообщения MQTT.
value -> (строка)
unit -> (строка)
Точность значения временной метки, полученного из выражения, описанного в value.
Допустимые значения: SECONDS | MILLISECONDS | MICROSECONDS | NANOSECONDS. По умолчанию MILLISECONDS.
latitude -> (строка)
longitude -> (строка)
Синтаксис JSON:
{
"sql": "string",
"description": "string",
"actions": [
{
"dynamoDB": {
"tableName": "string",
"roleArn": "string",
"operation": "string",
"hashKeyField": "string",
"hashKeyValue": "string",
"hashKeyType": "STRING"|"NUMBER",
"rangeKeyField": "string",
"rangeKeyValue": "string",
"rangeKeyType": "STRING"|"NUMBER",
"payloadField": "string"
},
"dynamoDBv2": {
"roleArn": "string",
"putItem": {
"tableName": "string"
}
},
"lambda": {
"functionArn": "string"
},
"sns": {
"targetArn": "string",
"roleArn": "string",
"messageFormat": "RAW"|"JSON"
},
"sqs": {
"roleArn": "string",
"queueUrl": "string",
"useBase64": true|false
},
"kinesis": {
"roleArn": "string",
"streamName": "string",
"partitionKey": "string"
},
"republish": {
"roleArn": "string",
"topic": "string",
"qos": integer,
"headers": {
"payloadFormatIndicator": "string",
"contentType": "string",
"responseTopic": "string",
"correlationData": "string",
"messageExpiry": "string",
"userProperties": [
{
"key": "string",
"value": "string"
}
...
]
}
},
"s3": {
"roleArn": "string",
"bucketName": "string",
"key": "string",
"cannedAcl": "private"|"public-read"|"public-read-write"|"aws-exec-read"|"authenticated-read"|"bucket-owner-read"|"bucket-owner-full-control"|"log-delivery-write"
},
"firehose": {
"roleArn": "string",
"deliveryStreamName": "string",
"separator": "string",
"batchMode": true|false
},
"cloudwatchMetric": {
"roleArn": "string",
"metricNamespace": "string",
"metricName": "string",
"metricValue": "string",
"metricUnit": "string",
"metricTimestamp": "string"
},
"cloudwatchAlarm": {
"roleArn": "string",
"alarmName": "string",
"stateReason": "string",
"stateValue": "string"
},
"cloudwatchLogs": {
"roleArn": "string",
"logGroupName": "string",
"batchMode": true|false
},
"elasticsearch": {
"roleArn": "string",
"endpoint": "string",
"index": "string",
"type": "string",
"id": "string"
},
"salesforce": {
"token": "string",
"url": "string"
},
"iotAnalytics": {
"channelArn": "string",
"channelName": "string",
"batchMode": true|false,
"roleArn": "string"
},
"iotEvents": {
"inputName": "string",
"messageId": "string",
"batchMode": true|false,
"roleArn": "string"
},
"iotSiteWise": {
"putAssetPropertyValueEntries": [
{
"entryId": "string",
"assetId": "string",
"propertyId": "string",
"propertyAlias": "string",
"propertyValues": [
{
"value": {
"stringValue": "string",
"integerValue": "string",
"doubleValue": "string",
"booleanValue": "string"
},
"timestamp": {
"timeInSeconds": "string",
"offsetInNanos": "string"
},
"quality": "string"
}
...
]
}
...
],
"roleArn": "string"
},
"stepFunctions": {
"executionNamePrefix": "string",
"stateMachineName": "string",
"roleArn": "string"
},
"timestream": {
"roleArn": "string",
"databaseName": "string",
"tableName": "string",
"dimensions": [
{
"name": "string",
"value": "string"
}
...
],
"timestamp": {
"value": "string",
"unit": "string"
}
},
"http": {
"url": "string",
"confirmationUrl": "string",
"headers": [
{
"key": "string",
"value": "string"
}
...
],
"auth": {
"sigv4": {
"signingRegion": "string",
"serviceName": "string",
"roleArn": "string"
}
}
},
"kafka": {
"destinationArn": "string",
"topic": "string",
"key": "string",
"partition": "string",
"clientProperties": {"string": "string"
...},
"headers": [
{
"key": "string",
"value": "string"
}
...
]
},
"openSearch": {
"roleArn": "string",
"endpoint": "string",
"index": "string",
"type": "string",
"id": "string"
},
"location": {
"roleArn": "string",
"trackerName": "string",
"deviceId": "string",
"timestamp": {
"value": "string",
"unit": "string"
},
"latitude": "string",
"longitude": "string"
}
}
...
],
"ruleDisabled": true|false,
"awsIotSqlVersion": "string",
"errorAction": {
"dynamoDB": {
"tableName": "string",
"roleArn": "string",
"operation": "string",
"hashKeyField": "string",
"hashKeyValue": "string",
"hashKeyType": "STRING"|"NUMBER",
"rangeKeyField": "string",
"rangeKeyValue": "string",
"rangeKeyType": "STRING"|"NUMBER",
"payloadField": "string"
},
"dynamoDBv2": {
"roleArn": "string",
"putItem": {
"tableName": "string"
}
},
"lambda": {
"functionArn": "string"
},
"sns": {
"targetArn": "string",
"roleArn": "string",
"messageFormat": "RAW"|"JSON"
},
"sqs": {
"roleArn": "string",
"queueUrl": "string",
"useBase64": true|false
},
"kinesis": {
"roleArn": "string",
"streamName": "string",
"partitionKey": "string"
},
"republish": {
"roleArn": "string",
"topic": "string",
"qos": integer,
"headers": {
"payloadFormatIndicator": "string",
"contentType": "string",
"responseTopic": "string",
"correlationData": "string",
"messageExpiry": "string",
"userProperties": [
{
"key": "string",
"value": "string"
}
...
]
}
},
"s3": {
"roleArn": "string",
"bucketName": "string",
"key": "string",
"cannedAcl": "private"|"public-read"|"public-read-write"|"aws-exec-read"|"authenticated-read"|"bucket-owner-read"|"bucket-owner-full-control"|"log-delivery-write"
},
"firehose": {
"roleArn": "string",
"deliveryStreamName": "string",
"separator": "string",
"batchMode": true|false
},
"cloudwatchMetric": {
"roleArn": "string",
"metricNamespace": "string",
"metricName": "string",
"metricValue": "string",
"metricUnit": "string",
"metricTimestamp": "string"
},
"cloudwatchAlarm": {
"roleArn": "string",
"alarmName": "string",
"stateReason": "string",
"stateValue": "string"
},
"cloudwatchLogs": {
"roleArn": "string",
"logGroupName": "string",
"batchMode": true|false
},
"elasticsearch": {
"roleArn": "string",
"endpoint": "string",
"index": "string",
"type": "string",
"id": "string"
},
"salesforce": {
"token": "string",
"url": "string"
},
"iotAnalytics": {
"channelArn": "string",
"channelName": "string",
"batchMode": true|false,
"roleArn": "string"
},
"iotEvents": {
"inputName": "string",
"messageId": "string",
"batchMode": true|false,
"roleArn": "string"
},
"iotSiteWise": {
"putAssetPropertyValueEntries": [
{
"entryId": "string",
"assetId": "string",
"propertyId": "string",
"propertyAlias": "string",
"propertyValues": [
{
"value": {
"stringValue": "string",
"integerValue": "string",
"doubleValue": "string",
"booleanValue": "string"
},
"timestamp": {
"timeInSeconds": "string",
"offsetInNanos": "string"
},
"quality": "string"
}
...
]
}
...
],
"roleArn": "string"
},
"stepFunctions": {
"executionNamePrefix": "string",
"stateMachineName": "string",
"roleArn": "string"
},
"timestream": {
"roleArn": "string",
"databaseName": "string",
"tableName": "string",
"dimensions": [
{
"name": "string",
"value": "string"
}
...
],
"timestamp": {
"value": "string",
"unit": "string"
}
},
"http": {
"url": "string",
"confirmationUrl": "string",
"headers": [
{
"key": "string",
"value": "string"
}
...
],
"auth": {
"sigv4": {
"signingRegion": "string",
"serviceName": "string",
"roleArn": "string"
}
}
},
"kafka": {
"destinationArn": "string",
"topic": "string",
"key": "string",
"partition": "string",
"clientProperties": {"string": "string"
...},
"headers": [
{
"key": "string",
"value": "string"
}
...
]
},
"openSearch": {
"roleArn": "string",
"endpoint": "string",
"index": "string",
"type": "string",
"id": "string"
},
"location": {
"roleArn": "string",
"trackerName": "string",
"deviceId": "string",
"timestamp": {
"value": "string",
"unit": "string"
},
"latitude": "string",
"longitude": "string"
}
}
}
--cli-input-json | --cli-input-yaml (строка) Считывает аргументы из предоставленной JSON-строки. JSON-строка следует формату, указанному в --generate-cli-skeleton. Если на командной строке указаны другие аргументы, эти значения переопределят значения из JSON. Невозможно передавать произвольные двоичные данные с помощью значения, предоставленного в JSON, так как строка будет воспринята буквально. Это может не быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса к API. Если указано без значения или со значением input, выводит пример входного JSON, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если указано yaml-input, выведет пример входного YAML, который можно использовать с --cli-input-yaml. Если указано значение output, он проверяет входные данные команды и возвращает пример выходного JSON для этой команды. Сгенерированный JSON-скелет не стабилен между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Общие параметры
--debug (логическое значение)
Включить отладочную запись в журнал.
--endpoint-url (строка)
Переопределить стандартный URL команды указанным URL.
--no-verify-ssl (логическое значение)
По умолчанию AWS CLI использует SSL при общении с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет стандартное поведение проверки SSL-сертификатов.
--no-paginate (логическое значение)
Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI сделает только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования вывода команды.
- json
- text
- table
- yaml
- yaml-stream
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определённый профиль из файла учетных данных.
--region (строка)
Регион для использования. Переопределяет настройки конфигурации/среды.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/отключить вывод в цвете.
- on
- off
- auto
--no-sign-request (логическое значение)
Не подписывать запросы. Учетные данные не будут загружаться, если этот аргумент предоставлен.
--ca-bundle (строка)
Файл сертификатов CA для проверки SSL-сертификатов. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение равно 0, чтение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию составляет 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение равно 0, подключение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию составляет 60 секунд.
--cli-binary-format (строка)
Стиль форматирования для двоичных блоков. По умолчанию используется формат base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как строка, закодированная в base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, соответствующего двоичному блоку, fileb:// всегда будет обрабатываться как двоичное и будет использовать содержимое файла непосредственно независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (логическое значение)
Отключить кли-пейджер для вывода.
--cli-auto-prompt (логическое значение)
Автоматически запрашивать параметры ввода CLI.
--no-cli-auto-prompt (логическое значение)
Отключить автоматическую запрос параметров ввода CLI.
Примеры
Примечание
Для использования следующих примеров вам необходимо установить и настроить AWS CLI. См. руководство по началу работы в руководстве пользователя AWS CLI для получения дополнительной информации.
Если не указано иное, все примеры используют правила цитирования, подобные Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки терминала. См. Использование кавычек со строками в руководстве пользователя AWS CLI.
Для обновления определения правила темы
Следующий replace-topic-rule пример обновляет указанное правило для отправки оповещения SNS, когда показания уровня влажности почвы слишком низкие.
aws iot replace-topic-rule \
--rule-name MyRPiLowMoistureAlertRule \
--topic-rule-payload "{\"sql\": \"SELECT * FROM '$aws/things/MyRPi/shadow/update/accepted' WHERE state.reported.moisture = 'low'\", \"description\": \"Sends an alert when soil moisture level readings are too low.\",\"actions\": [{\"sns\":{\"targetArn\":\"arn:aws:sns:us-west-2:123456789012:MyRPiLowMoistureTopic\",\"roleArn\":\"arn:aws:iam::123456789012:role/service-role/MyRPiLowMoistureTopicRole\",\"messageFormat\": \"RAW\"}}],\"ruleDisabled\": false,\"awsIotSqlVersion\":\"2016-03-23\"}"
Эта команда не генерирует вывод.
Для получения дополнительной информации см. Создание правила AWS IoT в руководстве разработчика AWS IoT.
Вывод
Нет
© Copyright 2025, Amazon Web Services. Created using Sphinx.