[ aws . iotanalytics ]
run-pipeline-activity
Описание
Имитирует результаты выполнения действия в цепочке обработки данных на полезной нагрузке сообщения.
См. также: Документацию API AWS
Синтаксис
run-pipeline-activity
--pipeline-activity <value>
--payloads <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]
Параметры
--pipeline-activity (структура)
Действие в цепочке обработки данных, которое нужно выполнить. Оно не должно быть действием канала или хранилища данных, так как эти действия используются в цепочке только для загрузки исходного сообщения и сохранения (возможно, преобразованного) сообщения. Если указано действие Lambda, можно использовать только кратковременные функции Lambda (с таймаутом менее 30 секунд или менее).
channel -> (структура)
Определяет источник сообщений для обработки.
name -> (строка)
channelName -> (строка)
next -> (строка)
lambda -> (структура)
Выполняет функцию Lambda для изменения сообщения.
name -> (строка)
lambdaName -> (строка)
batchSize -> (целое число)
Количество сообщений, передаваемых функции Lambda для обработки.
Функция Lambda должна обработать все эти сообщения в течение пяти минут, что является максимальным временем ожидания для функций Lambda.
next -> (строка)
datastore -> (структура)
Указывает, где хранить обработанные данные сообщения.
name -> (строка)
datastoreName -> (строка)
addAttributes -> (структура)
Добавляет другие атрибуты на основе существующих атрибутов в сообщении.
name -> (строка)
attributes -> (массив)
Список из 1-50 AttributeNameMapping объектов, которые сопоставляют существующий атрибут с новым.
Примечание
Существующие атрибуты остаются в сообщении, поэтому если вы хотите удалить исходные, используйтеRemoveAttributeActivity .key -> (строка)
value -> (строка)
next -> (строка)
removeAttributes -> (структура)
Удаляет атрибуты из сообщения.
name -> (строка)
removeAttributes.attributes -> (список)
Список из 1-50 атрибутов, которые нужно удалить из сообщения.
(строка)
next -> (строка)
selectAttributes -> (структура)
Используется для создания нового сообщения, используя только указанные атрибуты из исходного сообщения.
name -> (строка)
selectAttributes.attributes -> (список)
Список атрибутов для выбора из сообщения.
(строка)
next -> (строка)
filter -> (структура)
Фильтровать сообщение на основе его атрибутов.
name -> (строка)
filter -> (строка)
next -> (строка)
math -> (структура)
Вычисляет арифметическое выражение, используя атрибуты сообщения, и добавляет его к сообщению.
name -> (строка)
attribute -> (строка)
math -> (строка)
next -> (строка)
deviceRegistryEnrich -> (структура)
Добавляет данные из реестра устройств IoT в ваше сообщение.
name -> (строка)
deviceRegistryEnrich.attribute -> (строка)
thingName -> (строка)
roleArn -> (строка)
next -> (строка)
deviceShadowEnrich -> (структура)
Добавляет информацию из службы IoT Device Shadow в сообщение.
name -> (строка)
deviceShadowEnrich.attribute -> (строка)
thingName -> (строка)
roleArn -> (строка)
next -> (строка)
Сокращенный синтаксис:
channel={name=string,channelName=string,next=string},lambda={name=string,lambdaName=string,batchSize=integer,next=string},datastore={name=string,datastoreName=string},addAttributes={name=string,attributes={KeyName1=string,KeyName2=string},next=string},removeAttributes={name=string,attributes=[string,string],next=string},selectAttributes={name=string,attributes=[string,string],next=string},filter={name=string,filter=string,next=string},math={name=string,attribute=string,math=string,next=string},deviceRegistryEnrich={name=string,attribute=string,thingName=string,roleArn=string,next=string},deviceShadowEnrich={name=string,attribute=string,thingName=string,roleArn=string,next=string}
Синтаксис JSON:
{
"channel": {
"name": "string",
"channelName": "string",
"next": "string"
},
"lambda": {
"name": "string",
"lambdaName": "string",
"batchSize": integer,
"next": "string"
},
"datastore": {
"name": "string",
"datastoreName": "string"
},
"addAttributes": {
"name": "string",
"attributes": {"string": "string"
...},
"next": "string"
},
"removeAttributes": {
"name": "string",
"attributes": ["string", ...],
"next": "string"
},
"selectAttributes": {
"name": "string",
"attributes": ["string", ...],
"next": "string"
},
"filter": {
"name": "string",
"filter": "string",
"next": "string"
},
"math": {
"name": "string",
"attribute": "string",
"math": "string",
"next": "string"
},
"deviceRegistryEnrich": {
"name": "string",
"attribute": "string",
"thingName": "string",
"roleArn": "string",
"next": "string"
},
"deviceShadowEnrich": {
"name": "string",
"attribute": "string",
"thingName": "string",
"roleArn": "string",
"next": "string"
}
}
--payloads (список)
Примеры полезных нагрузок сообщений, на которых выполняется действие в цепочке обработки данных.
(двоичные данные)
Синтаксис:
blob blob ...
--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 для вывода.
--cli-auto-prompt (логическое значение)
Автоматически запросить параметры ввода CLI.
--no-cli-auto-prompt (логическое значение)
Отключить автоматический запрос параметров ввода CLI.
Примеры
Примечание
Чтобы использовать следующие примеры, необходимо установить и настроить AWS CLI. См. руководство по началу работы в руководстве пользователя AWS CLI для получения дополнительной информации.
Если не указано иное, все примеры используют правила цитирования Unix-подобных систем. Эти примеры потребуется адаптировать к правилам цитирования вашей терминальной оболочки. См. Использование кавычек со строками в руководстве пользователя AWS CLI.
Чтобы смоделировать действие в цепочке обработки данных
Следующий run-pipeline-activity пример моделирует результаты выполнения действия в цепочке обработки данных на полезной нагрузке сообщения.
aws iotanalytics run-pipeline-activity \
--cli-binary-format raw-in-base64-out \
--pipeline-activity file://maths.json \
--payloads file://payloads.json
Содержание maths.json:
{
"math": {
"name": "MyMathActivity",
"math": "((temp - 32) * 5.0) / 9.0",
"attribute": "tempC"
}
}
Содержание payloads.json:
[
"{\"humidity\": 52, \"temp\": 68 }",
"{\"humidity\": 52, \"temp\": 32 }"
]
Вывод:
{
"logResult": "",
"payloads": [
"eyJodW1pZGl0eSI6NTIsInRlbXAiOjY4LCJ0ZW1wQyI6MjB9",
"eyJodW1pZGl0eSI6NTIsInRlbXAiOjMyLCJ0ZW1wQyI6MH0="
]
}
Для получения дополнительной информации, см. RunPipelineActivity в справочнике по API AWS IoT Analytics.
Вывод
payloads -> (список)
Обогащённые или преобразованные образцы сообщений-нагрузок в виде строк, закодированных в base64. (Результаты выполнения активности конвейера для каждого входного образца сообщения-нагрузки, закодированные в base64.)
(blob)
logResult -> (строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.