Dead Letter Queue в Serverless Containers
Dead Letter Queue (DLQ) — это очередь, куда перенаправляются сообщения, которые не смог обработать вызываемый триггером контейнер Serverless Containers. Сообщение считается обработанным, если контейнер, который его получил, завершился без ошибок. Перенаправленные в DLQ сообщения хранятся в ней для дальнейшей диагностики.
Если контейнер не обработал сообщение за заданное количество попыток, оно перенаправляется в DLQ. Количество попыток вызова контейнера и очередь, которая будет использоваться в качестве DLQ, определяются политикой перенаправления. DLQ в Serverless Containers может быть только стандартной очередью.
Если политика перенаправления не настроена, необработанные контейнером сообщения удаляются.
Политика перенаправления
Условия перенаправления сообщений в DLQ задаются политикой перенаправления.
Чтобы настроить политику перенаправления для всех триггеров, кроме триггера для Yandex Message Queue, при создании триггера необходимо указать:
- очередь, куда будут перенаправляться сообщения;
- сервисный аккаунт с правами на запись в очередь;
- время, через которое будет сделан повторный вызов контейнера, если текущий завершился неуспешно;
- количество повторных вызовов, которые будут сделаны, прежде чем триггер отправит сообщение в очередь.
Политика перенаправления для триггера для Yandex Message Queue настраивается при создании очереди, сообщения из которой обрабатывает вызываемый триггером контейнер.
При перемещении в DLQ сообщение сохраняет свой идентификатор.