Триггеры в Yandex API Gateway. Обзор
Триггер — условие, при выполнении которого сообщения автоматически отправляются в WebSocket-соединения, подключенные к API-шлюзу по пути, указанному пользователем. Сам API-шлюз при этом не вызывается.
Триггеры позволяют автоматизировать работу с другими сервисами Yandex Cloud, например: Yandex Object Storage, Yandex Message Queue и Yandex Container Registry.
Примечание
Триггер начинает работать в течение 5 минут после создания.
В Yandex API Gateway доступны следующие типы триггеров:
- таймер;
- триггер для Message Queue;
- триггер для Object Storage;
- триггер для Container Registry;
- триггер для Cloud Logging;
- триггер для Yandex IoT Core;
- триггер для бюджетов;
- триггер для Data Streams;
- триггер для почты.
У каждого типа триггера есть индивидуальные условия срабатывания. Например, у триггера для Object Storage это может быть создание или изменение объекта. Некоторые условия задаются в настройках объекта сервиса, например у триггера для бюджетов это пороги для уведомлений в настройках бюджета.
Особенности отправки сообщений триггером
Триггеры отправляют сообщения с учетом установленных квот и лимитов.
При отправке сообщений триггером существуют следующие особенности:
- Триггер изменяет формат сообщений перед их отправкой в WebSocket-соединения. У каждого типа триггера свой формат сообщений, подробнее об этом читайте в разделе с описанием соответствующего триггера.
- Если сообщение не удалось отправить или никто не подключен по пути, который указан в настройках триггера, сообщение теряется без возможности повторить отправку.
- Сервисному аккаунту, от имени которого сообщения будут отправляться в WebSocket-соединения, необходима роль
api-gateway.websocketBroadcaster. Другие роли, необходимые для корректной работы триггера, зависят от его типа. Подробнее см. описание соответствующего триггера.
Группирование сообщений
Вы можете настроить группирование сообщений перед их отправкой в WebSocket-соединения у следующих триггеров:
- триггер для Message Queue;
- триггер для Cloud Logging;
- триггер для Object Storage;
- триггер для Container Registry;
- триггер для Yandex IoT Core;
- триггер для Data Streams;
- триггер для почты.
Это позволит отправлять сообщения не по одному, а группой. Для этого в параметрах триггера задайте:
- Время ожидания, с — время, в течение которого происходит группирование сообщений. Число сообщений при этом не превышает указанный размер группы.
- Размер группы — количество сообщений для группирования.
Подробнее о группировании сообщений читайте в инструкциях по созданию соответствующего триггера.