Триггер для Data Streams, который вызывает функцию Cloud Functions
Триггер для Data Streams запускает функцию Cloud Functions при отправке данных в поток.
Триггеру для Data Streams необходимы сервисные аккаунты для управления потоком и вызова функции. Вы можете использовать один и тот же сервисный аккаунт для обеих операций.
О том, как создать триггер для Data Streams, читайте в инструкции Создать триггер для Data Streams, который вызывает функцию Cloud Functions.
Группирование сообщений
Настройки группирования позволяют передавать в функцию сразу несколько сообщений. Эти настройки задают ограничение сверху по размеру группы сообщений и по времени ее накопления. Например, если размер группы сообщений равен 3, то в функцию могут поступать группы, в которых содержится от 1 до 3 сообщений.
Роли, необходимые для корректной работы триггера для Data Streams
- Для создания триггера вам необходимо разрешение на сервисный аккаунт, от имени которого триггер выполняет операцию. Это разрешение входит в роли iam.serviceAccounts.user, editor и выше.
- Для работы триггера сервисным аккаунтам необходимы роли:
functions.functionInvokerна функцию, которую вызывает триггер;yds.adminна поток, при отправке данных в который вызывается триггер.
Формат сообщения от триггера для Data Streams
Триггер для Data Streams принимает и отправляет сообщения только в формате JSON
После того как триггер сработает, он отправит в функцию сообщение с массивом messages:
{
"messages":[
{
"key1":"value1"
},
{
"key2":"value2"
}
]
}